沒有人喜歡站在那里等公共汽車來,尤其是當(dāng)你需要準(zhǔn)時(shí)到達(dá)某個(gè)地方的時(shí)候。如果你能預(yù)測下一班公共汽車什么時(shí)候到,那不是很棒嗎?
今年年初,亞美尼亞開發(fā)商埃德加·貢茨揚(yáng)( Edgar Gomtsyan )有一些空閑時(shí)間,他對(duì)這個(gè)問題感到困惑。他開發(fā)了自己的解決方案,而不是等待政府實(shí)體實(shí)施解決方案,或致電公交車調(diào)度員確認(rèn)公交車到達(dá)時(shí)間。基于機(jī)器學(xué)習(xí) 預(yù)測公交車到達(dá)時(shí)間 具有高精度。
碰巧, Gomtsyan 的公寓正對(duì)著一個(gè)公共汽車站所在的街道。為了跟蹤公交車的到達(dá)和離開,他在陽臺(tái)上安裝了一個(gè)小型安全攝像頭,使用圖像識(shí)別軟件。 Gomtsyan 說:“就像任何復(fù)雜的問題一樣,為了找到有效的解決方案,問題被分成了幾個(gè)小部分?!薄?/p>
他的解決方案使用了大華 IP 攝像機(jī)。對(duì)于視頻處理,他最初使用 VertexAI 其可用于圖像和對(duì)象檢測、分類和其他需要。由于擔(dān)心可能的網(wǎng)絡(luò)和電力問題,他最終決定使用 NVIDIA Jetson Nano 。您可以訪問 GitHub jetson-inference 上的各種庫和經(jīng)過訓(xùn)練的模型。
實(shí)時(shí)流協(xié)議( RTSP )將攝像機(jī)視頻流的細(xì)節(jié)連接到 Jetson Nano 。然后,使用 imagenet 對(duì)于分類和 GitHub repo 中的一個(gè)預(yù)訓(xùn)練模型, Gomtsyan 能夠立即獲得流的基本分類。
對(duì)于人群中的訓(xùn)練極客來說,事情開始變得有趣起來。使用預(yù)訓(xùn)練模型, Gomtsyan 使用他的設(shè)置在每次檢測到公交車時(shí)從視頻流中截取一個(gè)屏幕快照。他的第一個(gè)模型準(zhǔn)備好了大約 100 張照片。
但是,正如 Gomtsyan 所承認(rèn)的,“一開始說一切都是完美的是錯(cuò)誤的?!焙苊黠@,他需要更多的圖片來提高模型輸出的精度。他說,一旦他有了 300 張照片,“系統(tǒng)就越來越好了?!?。
當(dāng)他第一次分享這個(gè)項(xiàng)目的結(jié)果時(shí),他的模型已經(jīng)訓(xùn)練了 1300 多張圖片,即使在不同的天氣條件下,它也能檢測到到達(dá)和離開的巴士。他還能夠區(qū)分定時(shí)巴士和隨機(jī)到達(dá)的巴士。他的模型現(xiàn)在包括三類圖像檢測:到達(dá)的巴士、背景(不是預(yù)定巴士的一切)和離開的巴士。
例如,如果 15 幀的“到達(dá)總線”類預(yù)測大于或等于 92% ,則它將到達(dá)時(shí)間記錄到本地 CSV 文件中。
為了改進(jìn)收集的數(shù)據(jù),他的系統(tǒng)每次檢測到總線時(shí)都會(huì)從流中截取一張屏幕截圖。這有助于未來的模型再培訓(xùn)和發(fā)現(xiàn)假陽性檢測。
此外,為了克服本地存儲(chǔ) CSV 文件數(shù)據(jù)的局限性, Gomtsyan 選擇將數(shù)據(jù)存儲(chǔ)在 BigQuery 使用 谷歌物聯(lián)網(wǎng) 服務(wù)正如他所指出的,將數(shù)據(jù)存儲(chǔ)在云中“提供了一個(gè)更加靈活和可持續(xù)的解決方案,將滿足未來的增強(qiáng)?!?/p>
他利用收集到的信息創(chuàng)建了一個(gè)模型,該模型將使用頂點(diǎn)人工智能回歸服務(wù)預(yù)測下一輛公交車何時(shí)到達(dá)。 Gomtsyan 建議觀看下面的視頻,學(xué)習(xí)如何設(shè)置模型。
隨著工作模型的建立和運(yùn)行, Gomtsyan 需要一個(gè)接口,讓他知道下一輛公交車何時(shí)到達(dá)。他選擇使用基于物聯(lián)網(wǎng)的語音助手,而不是網(wǎng)站。他最初計(jì)劃使用谷歌助手來實(shí)現(xiàn)這一目的,但這比預(yù)期的更具挑戰(zhàn)性。相反,他使用了 Alexa Skill ,這是亞馬遜的語音助手工具。他創(chuàng)建了一個(gè) Alexa 技能,可以根據(jù)公寓中 Alexa 揚(yáng)聲器發(fā)出的命令查詢相應(yīng)的云功能。
圖 2.Gomtsyan 模型的最終架構(gòu)
雖然預(yù)測并不完美,但 Gomtsyan 對(duì)未來的改進(jìn)有一些想法,可以幫助提高預(yù)測公交到達(dá)時(shí)間的準(zhǔn)確性,包括公交線路沿線的交通擁堵數(shù)據(jù)。他還考慮使用太陽能電池板為系統(tǒng)供電并使其自主,并引入 DevOps 實(shí)踐。
Gomtsyan 開發(fā)這個(gè)項(xiàng)目是為了學(xué)習(xí)和挑戰(zhàn)自己。使用他的項(xiàng)目文檔,其他開發(fā)人員可以復(fù)制并改進(jìn)他的工作。最后,他希望這個(gè)巴士預(yù)測項(xiàng)目將鼓勵(lì)其他人追求他們的想法,“無論他們聽起來多么瘋狂、困難或不可能?!?/p>
關(guān)于作者
Jason Black 是 NVIDIA 的自主機(jī)器營銷和通信高級(jí)經(jīng)理。作為過去 25 年的作家和編輯,他喜歡在流行語背后尋找故事的核心??吹?a href="http://www.www27dydycom.cn/soft/data/42-101/" target="_blank">機(jī)器人 MIG 把他帶到哪里,他很興奮。
審核編輯:郭婷
-
NVIDIA
+關(guān)注
關(guān)注
14文章
5309瀏覽量
106398 -
攝像機(jī)
+關(guān)注
關(guān)注
3文章
1705瀏覽量
61404
發(fā)布評(píng)論請(qǐng)先 登錄
天雙科技高集成多功能AI一體機(jī)破局公交車駕駛困境
簡儀科技新能源公交車電池模組短路測試解決方案
用PaddleNLP為GPT-2模型制作FineWeb二進(jìn)制預(yù)訓(xùn)練數(shù)據(jù)集

訓(xùn)練好的ai模型導(dǎo)入cubemx不成功怎么處理?
從Open Model Zoo下載的FastSeg大型公共預(yù)訓(xùn)練模型,無法導(dǎo)入名稱是怎么回事?
用PaddleNLP在4060單卡上實(shí)踐大模型預(yù)訓(xùn)練技術(shù)

使用BP神經(jīng)網(wǎng)絡(luò)進(jìn)行時(shí)間序列預(yù)測
【「基于大模型的RAG應(yīng)用開發(fā)與優(yōu)化」閱讀體驗(yàn)】+大模型微調(diào)技術(shù)解讀
KerasHub統(tǒng)一、全面的預(yù)訓(xùn)練模型庫
時(shí)空引導(dǎo)下的時(shí)間序列自監(jiān)督學(xué)習(xí)框架

如何訓(xùn)練自己的LLM模型
PyTorch GPU 加速訓(xùn)練模型方法
直播預(yù)約 |數(shù)據(jù)智能系列講座第4期:預(yù)訓(xùn)練的基礎(chǔ)模型下的持續(xù)學(xué)習(xí)

評(píng)論