日本a√视频在线,久久青青亚洲国产,亚洲一区欧美二区,免费g片在线观看网站

        <style id="k3y6c"><u id="k3y6c"></u></style>
        <s id="k3y6c"></s>
        <mark id="k3y6c"></mark>
          
          

          <mark id="k3y6c"></mark>

          新聞中心

          EEPW首頁(yè) > 智能計(jì)算 > 設(shè)計(jì)應(yīng)用 > 使用Raspberry Pi 5和Hailo-8L AI進(jìn)行物體識(shí)別和距離測(cè)量

          使用Raspberry Pi 5和Hailo-8L AI進(jìn)行物體識(shí)別和距離測(cè)量

          作者: 時(shí)間:2025-09-17 來(lái)源: 收藏

          想象一下,一輛車輛以每小時(shí) 54 公里的速度巡航,大約相當(dāng)于一個(gè)物體以每秒 30 幀的速度每幀移動(dòng) 0.5 米的速度(0.5×30×3.6=54 公里/小時(shí))。安裝在車頂上的是一個(gè)緊湊的高性能視覺(jué)系統(tǒng),圍繞 板和 加速器構(gòu)建。這種實(shí)時(shí)設(shè)置可以檢測(cè)前方物體并估計(jì)它們與車輛的距離。當(dāng)物體進(jìn)入預(yù)定義的安全區(qū)域時(shí),系統(tǒng)可以立即發(fā)出警告或啟動(dòng)緊急制動(dòng),從而增強(qiáng)態(tài)勢(shì)感知和反應(yīng)時(shí)間。

          該系統(tǒng)使用 上的 AI 加速器 HAT 構(gòu)建,作為生產(chǎn)級(jí) AI 平臺(tái)運(yùn)行,能夠以每秒至少 30 幀的速度運(yùn)行。專為車載安裝而設(shè)計(jì),可連續(xù)掃描道路,實(shí)時(shí)識(shí)別物體,并計(jì)算其距離。這些實(shí)時(shí)讀數(shù)顯示在終端上。如果任何物體超過(guò)預(yù)定義的接近閾值,系統(tǒng)可能會(huì)通過(guò) GPIO 引腳觸發(fā)警報(bào)。盡管警報(bào)機(jī)制易于實(shí)現(xiàn),但在當(dāng)前版本中仍未構(gòu)建。組裝系統(tǒng)所需的組件列在物料清單表格中。圖1顯示了作者的工作原型。

          物體識(shí)別和距離測(cè)量系統(tǒng)

          圖1:作者的系統(tǒng)原型

          連接和安裝

          AI加速器可以安裝在樹(shù)莓派的頂部,如圖2所示。請(qǐng)注意,由于 AI HAT 完全覆蓋主處理器,因此 往往會(huì)顯著發(fā)熱。為防止過(guò)熱,強(qiáng)烈建議使用額外的冷卻方法。在該系統(tǒng)中,安裝 AI HAT 后,只有特定的固定式冷卻器才能安裝在可用的狹窄空間內(nèi)。完整的設(shè)置及其各個(gè)組件如圖 2 所示。樹(shù)莓派 5 還必須由高質(zhì)量的 5V、4A 電源適配器供電,以保持穩(wěn)定的性能。


          安裝在樹(shù)莓派上的AI加速器

          圖2:安裝在樹(shù)莓派上的AI加速器

          通過(guò)主動(dòng)冷卻,Raspberry Pi 5 可以安全地超頻以獲得額外的性能,但代價(jià)是功耗和發(fā)熱略有增加。冷卻器的風(fēng)扇連接器應(yīng)插入 Pi 5 板上的指定風(fēng)扇接頭。當(dāng)與 AI HAT 搭配使用時(shí),基于 YOLO 的 AI 處理的繁重工作由加速器處理,使 Pi 5 能夠?qū)W⒂谟?jì)算和控制邏輯。這種分工確保了平穩(wěn)高效的運(yùn)行,即使在每秒 30 幀的情況下也是如此。

          物料清單
          組件數(shù)量
          樹(shù)莓派 5、8Gb 或 16Gb1
          適用于 Pi 5 的 加速器,13 TOPS 至 26 TOPS1
          Pi 5 相機(jī)1
          Pi 5 電源適配器1
          高速 SD 卡,32GB 或更多
          HDMI 適配器/顯示器1

          編程和代碼

          首先,確保安裝了 64 位 Raspberry Pi OS Bookworm。該系統(tǒng)在 32 位 Pi作系統(tǒng)上不起作用。建議使用高質(zhì)量的相機(jī)模塊 3 或更高,以獲得最佳效果。

          -廣告-

          安裝指南

          https://www.raspberrypi.com/documentation/computers/ai.html#getting-started

          更新 Systembash

          $ sudo apt-get update
          $ sudo apt-get upgrade

          訪問(wèn) Raspberry Pi

          作 Raspberry Pi 最方便的方法是通過(guò) SSH 從臺(tái)式機(jī)或筆記本電腦訪問(wèn)它:

          $ ssh bera@192.168.x.x

          出現(xiàn)提示時(shí),輸入密碼。身份驗(yàn)證后,將授予對(duì) Raspberry Pi 5 終端的訪問(wèn)權(quán)限。

          注意

          SSH 訪問(wèn)是可選的;還支持使用顯示器、鍵盤(pán)和鼠標(biāo)進(jìn)行直接連接。

          啟用 PCIe Gen 3.0 速度

          默認(rèn)情況下,Raspberry Pi 5 以第 2.0 代 PCIe 速度運(yùn)行。要啟用第 3.0 代:

          $ sudo raspi-config
          • 導(dǎo)航到高級(jí)選項(xiàng)→PCIE 速度

          • 選擇“是”以啟用第 3 代模式

          • 選擇“完成”,并在出現(xiàn)提示時(shí)重新啟動(dòng)系統(tǒng)。

          安裝 Hailo 軟件堆棧

          重新啟動(dòng)后,安裝 Hailo 驅(qū)動(dòng)程序和工具:

          $ sudo apt install hailo-all

          此命令安裝 Hailo 內(nèi)核設(shè)備驅(qū)動(dòng)程序、固件、HailoRT、Hailo 應(yīng)用程序、庫(kù)和“rpicam-apps”。然后重新啟動(dòng)系統(tǒng):

          $ sudo reboot

          重新啟動(dòng)以應(yīng)用所有更改。驗(yàn)證 Hailo 安裝。重新啟動(dòng)后,運(yùn)行:

          $ hailortcli fw-control identify

          這可確保所有更改生效。

          Executing on device: 0000:01:00.0
          Identifying board
          Control Protocol Version: 2
          Firmware Version: 4.17.0
          (release,app,extended context switch
          buffer) Logger Version: 0
          Board Name: Hailo-8
          Device Architecture: HAILO8L
          Serial Number: HLDDLBB234500054
          Part Number: HM21LB1C2LAE
          Product Name: HAILO-8L AI ACC M.2 B+M KEY
          MODULE EXT TMP

          最后五行確保 Hailo-8L 板已成功安裝。在某些情況下,可能不會(huì)顯示序列號(hào)或部件號(hào),但電路板將繼續(xù)正常運(yùn)行。測(cè)試 rpicam-hello:

          $> rpicam-hello -t 10s # This will run
          rpicam for 10 seconds and then stop
          $> rpicam-hello --help # This displays
          the help file

          安裝完所有組件后,安裝“rpicam-apps”包以啟用 Hailo AI 加速器功能:

          $> sudo apt update && sudo apt install
          rpicam-apps

          現(xiàn)在可以執(zhí)行高速物體檢測(cè)示例:

          $> rpicam-hello -t 0 --post-process-file /
          
          usr/share/rpi-camera-assets/hailo_yolov6_
          
          inference.json
          
          $> rpicam-hello -t 0 --post-process-file /
          
          usr/share/rpi-camera-assets/hailo_yolov8_
          
          inference.json
          
          $> rpicam-hello -t 0 --post-process-file /
          
          usr/share/rpi-camera-assets/hailo_yolov5_
          
          personface.json # This command detects
          
          faces – useful for face counting
          
          $> rpicam-hello -t 0 --post-process-file /
          
          usr/share/rpi-camera-assets/hailo_yolov8_
          
          pose.json # This command detects human
          
          poses – useful for fall detection

          這些命令演示了如何將 “rpicam-hello ”與不同的 YOLO AI 模型一起使用。

          安裝說(shuō)明

          Hailo RPi5 示例 – 安裝指南:

          步驟 1:克隆存儲(chǔ)庫(kù)

          $> git clone https://github.com/hailo-ai/
          
          hailo-rpi5-examples.git

          第 2 步:導(dǎo)航到目錄

          $> cd hailo-rpi5-examples

          該目錄包含兩個(gè)關(guān)鍵文件:“setup_env.sh”和“requirements.txt”。

          由于 Hailo-8L 需要特定的 Python 包版本,因此建議使用虛擬環(huán)境以避免沖突。這允許在本地安裝必要的包版本,而不會(huì)干擾系統(tǒng)范圍的 Python 環(huán)境。下一步是按照 Hailo-8L 套件的推薦激活特殊環(huán)境。

          第 3 步:激活虛擬環(huán)境

          $> source setup_env.sh

          激活后,終端提示符將更改為指示虛擬環(huán)境中的條目:(venv_hailo_rpi5_examples) bera@raspberrypi:~/hailo-rpi5-examples $

          第 4 步:安裝所需的 Python 包

          (venv_hailo_rpi5_examples) bera@raspberrypi:~/hailo-rpi5-examples $ pip install -r requirements.txt

          requirements.txt文件包含 Hailo 示例所需的 Python 包列表。要查看文件內(nèi)容:

          $> cat requirements.txt

          預(yù)期內(nèi)容:

          numpy<2.0.0 setproctitle opencv-python

          要單獨(dú)安裝它們:

          $> pip install numpy<2.0.0
          $> pip install setproctitle
          $> pip install opencv-python

          第 5 步:下載必要的 Hailo 模型

          $> download_resources.sh

          若要安裝其他 Python 資源,請(qǐng)?jiān)L問(wèn):https://github.com/hailo-ai/hailo-apps-infra

          該存儲(chǔ)庫(kù)提供適用于 Raspberry Pi 5 的 Hailo 應(yīng)用程序基礎(chǔ)設(shè)施。其中某些部分對(duì)于當(dāng)前代碼是可選的。

          $> git clone https://github.com/hailo-ai/
          hailo-apps-infra.git
          $> pip install --force-reinstall -v -e .
          # (Optional)

          'git clone' 命令下載了 Hailo 的其他 Python 實(shí)用程序。最后一個(gè) pip 命令完全是可選的;它可以運(yùn)行或跳過(guò)。在此階段,系統(tǒng)所需的所有軟件組件都應(yīng)就位。請(qǐng)注意,所有這些工具都屬于開(kāi)源軟件類別。

          使用“basic_pipelines”目錄中的 Python 腳本開(kāi)始試驗(yàn) Hailo-8L 加速器:

          現(xiàn)在,該過(guò)程可以繼續(xù)使用 Hailo-8L 加速器,嘗試一些示例 Python 腳本,并最終構(gòu)建單獨(dú)的measure_distance3.py。basic_pipelines子目錄中已經(jīng)提供了兩個(gè)示例 Python 腳本:

          • detection_simple.py

          • pose_estimation.py

          這些可以接受來(lái)自預(yù)定義源的輸入,例如 MP4 文件、Raspberry Pi 相機(jī)或 USB 相機(jī)。用法示例:

          $> python basic_pipelines/detection_
          
          simple.py --input rpicam # From Pi Camera
          
          $> python basic_pipelines/pose_estimation.
          
          py --input test.mp4 # From video file
          
          $> python basic_pipelines/detection_
          
          simple.py --input /dev/video0 # From USB
          
          camera
          
          $> python basic_pipelines/detection.py
          
          --help # Help for detection.py

          要使用自定義模型:

          $> python basic_pipelines/detection.py

          –標(biāo)簽-json 資源/barcode-labels.json

          –hef-path 資源/yolov8s-hailo8l-barcode.hef

          –輸入資源/barcode.mp4

          測(cè)距理論

          通過(guò)將物體的已知寬度與捕獲圖像中的感知寬度進(jìn)行比較來(lái)估計(jì)距離。

          根據(jù)針孔相機(jī)模型,距離相機(jī)較遠(yuǎn)的物體會(huì)顯得更小。如果相機(jī)的焦距、物體的真實(shí)寬度和觀察到的圖像寬度已知,則可以使用類似的三角形計(jì)算距離。

          標(biāo)準(zhǔn)寬度和默認(rèn)寬度在代碼開(kāi)頭定義。

          分割模型“yolov5n_seg_h8l_mz.hef”有助于識(shí)別完整的物體,即使部分可見(jiàn)也是如此。分割后的圖像用于估計(jì)物體的寬度,然后將其與已知尺寸進(jìn)行比較以確定距離。

          # Object width dictionary for distance
          
          estimation (in metres)
          
          OBJECT_WIDTHS = {
          
          “person”: 0.4, “bicycle”: 0.5, “car”:
          
          1.8, “motorcycle”: 0.8, “bus”: 2.5,
          
          “truck”: 2.5, “airplane”: 36.0, “train”:
          
          3.2, “boat”: 5.0, “traffic light”: 0.6,
          
          “fire hydrant”: 0.3, “stop sign”: 0.75,
          
          “cat”: 0.3, “dog”: 0.6, “horse”: 1.2,
          
          “cow”: 1.5, “elephant”: 3.2, “bear”: 1.7,
          
          “zebra”: 1.2, “giraffe”: 2.0,
          
          “bench”: 1.2, “chair”: 0.6, “couch”: 2.0,
          
          “dining table”: 1.8,
          
          “l(fā)aptop”: 0.4, “tv”: 1.2
          
          }
          
          DEFAULT_OBJECT_WIDTH = 0.5 # Default
          
          width (in meters) for unknown objects
          
          FOCAL_LENGTH = 0.5 # Focal length in
          
          meters (Raspberry Pi Camera Module 3 Wide
          
          Spec)
          
          To run the measure_distance3.py script
          
          and capture data from different camera
          
          sources:
          
          $> python measure_distance3.py --input
          
          rpicam # Capture data from Pi camera
          
          $> python measure_distance3.py --input /
          
          dev/video0 # Capture data from USB camera

          模型 yolov5n_seg_h8l_mz.hef 支持大約 80 個(gè)對(duì)象類,但在此實(shí)現(xiàn)中,重點(diǎn)僅放在上一個(gè)字典中列出的 26 個(gè)特定對(duì)象上。這些對(duì)象提供了標(biāo)準(zhǔn)物理寬度,可以估計(jì)它們與攝像機(jī)的距離。

          測(cè)試

          圖 3 說(shuō)明了技術(shù),而圖 4 和圖 5 顯示了引腳細(xì)節(jié)和安裝。

          距離測(cè)量技術(shù)

          圖3:技術(shù)

          為系統(tǒng)供電并運(yùn)行腳本。物體及其距離將實(shí)時(shí)顯示。

          Raspberry Pi 引腳詳細(xì)信息

          圖 4:Raspberry Pi 的引腳細(xì)節(jié)

          Raspberry Pi 5 與 HAT 配對(duì),由 5V、4A 電源供電,非常適合需要實(shí)時(shí)物體檢測(cè)和距離估計(jì)的嵌入式或固定應(yīng)用。

          Raspberry Pi 和相機(jī)安裝

          圖 5:相機(jī)和 Raspberry Pi 的安裝

          這個(gè)項(xiàng)目可以在哪里使用?

          該系統(tǒng)可用于多種目的,例如:

          汽車儀表盤(pán)監(jiān)控

          該系統(tǒng)安裝在擋風(fēng)玻璃上,可以檢測(cè)前方車輛和行人,估計(jì)距離,并在發(fā)生潛在碰撞或不安全的跟車距離時(shí)向駕駛員發(fā)出警報(bào)。它還可以集成語(yǔ)音合成器,例如 espeak-ng,通過(guò)揚(yáng)聲器發(fā)出語(yǔ)音建議。

          帶咨詢的倒檔監(jiān)控

          它安裝在汽車后部,可以在停車過(guò)程中檢測(cè)附近的物體或人,并提供視覺(jué)/音頻警報(bào),甚至觸發(fā)自動(dòng)制動(dòng)機(jī)制。

          智能門(mén)禁監(jiān)控

          該系統(tǒng)位于入口處,可以檢測(cè)接近的個(gè)人,對(duì)他們進(jìn)行分類(例如送貨員、已知訪客或陌生人),并估計(jì)他們的距離以實(shí)現(xiàn)自動(dòng)作,包括門(mén)鈴激活、照明或門(mén)解鎖。

          建筑物中的占用率和人群分析

          它可用于監(jiān)控大廳、走廊或等候區(qū)的人員密度和間距。當(dāng)人們彼此距離太近或該區(qū)域變得過(guò)度擁擠時(shí),該系統(tǒng)可以觸發(fā)通風(fēng)系統(tǒng)或人群控制警報(bào)。

          倉(cāng)庫(kù)安全系統(tǒng)

          它可以檢測(cè)移動(dòng)的叉車或人員,并估計(jì)它們與限制區(qū)域的接近程度。這可以幫助在附近接近時(shí)觸發(fā)警報(bào)或減慢自動(dòng)化機(jī)械的速度,從而提高工作場(chǎng)所的安全性。

          用于室內(nèi)導(dǎo)航的機(jī)器人視覺(jué)

          它用于 AGV(自動(dòng)導(dǎo)引車)或室內(nèi)機(jī)器人,以識(shí)別障礙物并測(cè)量距離,從而在室內(nèi)環(huán)境中實(shí)現(xiàn)更安全、更高效的導(dǎo)航。

          學(xué)區(qū)或大門(mén)監(jiān)控

          該系統(tǒng)監(jiān)控學(xué)校大門(mén)附近兒童或監(jiān)護(hù)人的存在和移動(dòng),并根據(jù)檢測(cè)到的行為和距離生成警報(bào)或自動(dòng)執(zhí)行大門(mén)作。

          收費(fèi)站或橋梁的交通監(jiān)控

          該系統(tǒng)識(shí)別車輛類型并測(cè)量距離,以實(shí)現(xiàn)自動(dòng)收費(fèi)、檢測(cè)超載或分析交通密度。

          校車閘機(jī)監(jiān)控

          它可以幫助觀察進(jìn)來(lái)的交通和兒童在校車門(mén)周圍的移動(dòng),確保更安全的進(jìn)出條件。



          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉