智慧交通day00-项目简介
汽車的日益普及在給人們帶來極大便利的同時,也導致了擁堵的交通路況,以及更為頻發的交通事故。智能交通技術已成為推動現代技術交通技術發展的重要力量,智能交通不僅能夠提供實時的交通路況信息,幫助交通管理者規劃管理策略,而且還能優化出行者的出行策略。還可以減輕交通道路的堵塞情況,降低交通事故的發生概率,提高道路運行的安全系數。
本項目分兩個模塊:
-
一個是基于視頻的車輛跟蹤及流量統計,是一個可跟蹤路面實時車輛通行狀況,并逐幀記錄不同行車道車流量數目的深度學習項目,在視頻中可看出每個車輛的連續幀路徑,該項目可拓展性強,可根據企業業務外接計費結算系統、LED顯示系統、語音播報系統、供電防雷系統等,
-
另一個是車道線檢測項目,是實現自動駕駛的首要任務,廣泛應用于自動駕駛廠家,能夠根據車載攝像頭的輸入,對安全駕駛區域進行預判,提醒駕駛員進行安全駕駛,減少交通事故的發生。
該項目的架構圖如下所示:?
- 用戶層:通過攝像頭或人工選擇視頻送入服務層中進行處理,處理完成后可輸出經渲染后的視頻,或觸發報警裝置
- 服務層:主要包含兩個模塊,
- 一是車輛追蹤及計數,該模塊模塊一對輸入的視頻進行處理,使用yoloV3模型進行目標檢測,然后使用SORT進行目標追蹤,使用卡爾曼濾波器進行目標位置預測,并利用匈牙利算法對比目標的相似度,完成車輛目標追蹤,利用虛擬線圈的思想實現車輛目標的計數,并根據計數完成車道擁堵的判斷;
- 另一個是車道線的檢測,該模塊使用張氏較正法對相機進行較正,利用較正結果對圖像去畸變,然后利用邊緣與顏色提取車道線,利用仿射變換轉換成鳥瞰圖,并利用直方圖和滑動窗口的算法精確定位車道線,利用最小二乘法進行擬合,實現車道線的檢測,并計算車輛偏離車道中心的距離,觸發報警裝置。
- 效果展示:
2.環境安裝
該項目中使用的工具包包含以下:
NumPy 是使用 Python 進行科學計算的基礎包。
Numba 是一個開源 JIT 編譯器,它將 Python 和 NumPy 代碼的子集轉換為快速機器碼。
SciPy 是數學、科學和工程的開源軟件。SciPy 庫依賴于 NumPy,它提供方便快捷的 N 維數組操作。
h5py 從 Python 讀取和寫入 HDF5文件。
pandas 用于數據分析、時間序列和統計的強大的數據結構。
opencv-python 用于 Python 的預構建 OpenCV 包。
moviepy 用于進行視頻處理的工具包
Filterpy 實現了卡爾曼濾波器和粒子濾波器等
具體版本見requirements文件中。
安裝方法:
# 創建虛擬環境 conda create -n dlcv python # 激活虛擬環境 source activate dlcv # 激活虛擬環境(window) activate dlcv # 安裝對應的工具包 pip install -r requirements.txtrequirements.txt 見文末總結
智慧交通中包含兩個模塊:多目標車輛跟蹤及流量統計和車道線檢測
智慧交通項目分為用戶層和服務層,用戶層進行視頻或攝像頭的操作,服務層對視頻進行處理,完成多目標車輛的跟蹤及車流量的統計和車道線檢測
requirements.txt: amqp==2.5.2 billiard==3.6.3.0 celery==4.4.2 certifi==2019.11.28 chardet==3.0.4 click==7.1.1 colorama==0.3.9 cycler==0.10.0 Cython==0.29.19 decorator==4.4.2 Django==2.2.10 django-redis==4.11.0 filterpy==1.4.5 fire==0.1.3 Flask==1.1.1 h5py==2.8.0 idna==2.8 imageio==2.8.0 imageio-ffmpeg==0.4.1 importlib-metadata==1.6.0 imutils==0.5.3 itsdangerous==1.1.0 Jinja2==2.11.1 Kalman==0.1.3 kiwisolver==1.1.0 kombu==4.6.8 llvmlite==0.31.0 MarkupSafe==1.1.1 matplotlib==2.2.3 moviepy==1.0.1 numba==0.39.0 numpy==1.15.4 opencv-python==3.4.3.18 pandas==0.23.4 Pillow==7.0.0 proglog==0.1.9 protobuf==3.11.3 pyparsing==2.4.6 python-dateutil==2.8.1 pytz==2019.3 redis==3.4.1 requests==2.21.0 scipy==1.1.0 six==1.14.0 sqlparse==0.3.1 tensorboardX==1.6 torch==0.4.1 torchvision==0.2.1 tqdm==4.29.1 urllib3==1.24.3 vine==1.3.0 Werkzeug==1.0.0 zipp==3.1.0
總結
以上是生活随笔為你收集整理的智慧交通day00-项目简介的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 数据结构之堆:堆的介绍与python实现
- 下一篇: OpenCV_04 几何变换:图像缩放+