點擊查看系列文章目錄
0 背景
近日,NV 發布了 deepstream6.0,有不少新功能,本文對發行內容進行一個說明,后續也會對我比較感興趣的一些功能進行詳細介紹與測驗,
1 安裝方法
安裝方法與之前的大同小異,需要注意的是環境依賴性,在 jetson 上需要將 jetpack 更新到 4.6,如果你現在是 4.4 及以上版本的 jetpack,可以使用《NVIDIA Jetson之OTA遠程升級Jetpack》中的方法升級,否則需要使用 NVIDIA SDK Manger 工具刷機,或者燒寫 SD 卡,
安裝方法參考《DeepStream4.0系列之環境配置安裝》與《DeepStream5.0系列之環境安裝》,我這里在 jetson 設備上進行安裝測驗,在官網下載壓縮包

然后拷貝到 jetson 上,解壓安裝
sudo tar -jxvf deepstream_sdk_v6.0.0_jetson.tbz2 -C /
cd /opt/nvidia/deepstream/deepstream-6.0/
sudo ./install.sh
安裝后之后運行指令驗證一下,可以看到安裝成功
nvidia@nvidia:~$ deepstream-app --version-all
deepstream-app version 6.0.0
DeepStreamSDK 6.0.0
CUDA Driver Version: 10.2
CUDA Runtime Version: 10.2
TensorRT Version: 8.0
cuDNN Version: 8.2
libNVWarp360 Version: 2.0.1d3
2 更新內容
官方介紹 6.0 有以下內容更新
- Graph Composer:圖生成器,即使用 UI 界面進行拖拽式搭建 pipeline,可以通過容器快速搭建,
- 動作識別:使用新的預處理插件(nvdspreprocess)創建pipeline,來識別場景中的動作,可以指定感興趣區域以及同時處理的幀數
- 音視頻同步:應用于廣播和網路會議場景
- 自動語音識別 ASR:新插件可以對輸入的音頻資料進行識別,然后轉化為文本輸出
- python 版本的原始碼更新
- Tracker 跟蹤器相關更新:性能提升、容易集成、支持 DeepSORT 跟蹤演算法
- 全新的 REDIS 支持,在 5.1 版本中是 alpha 版本
- 在 NVIDIA IOT GitHub 提供新的示例,包括 ASR、動作識別、姿態估計、情緒識別、手勢識別等
在發行檔案中介紹了改版本新增的插件有 4 個:
- gst-nvdspreprocess 插件:可以對輸入流進行前處理,配置 ROI 區域
- gst-nvdsasr 插件:基于 NVIDIA Riva SDK 開發的自動語音識別插件
- gst-nvds_text_to_speech 插件:基于 NVIDIA Riva SDK 開發的文本轉語音插件
- gst-nvdsudpsrc 插件:用于支持 Mellanox NIC
以及一些新的示例,具體后續會展開
3 未解決問題
- V4L2 編解碼器最多支持 1024 路(解碼 + 編碼)
- 在 jetson 設備上,gst-dsexample 示例中的 config_infer_primary.txt 組態檔中的 detected-min-w 和 detected-min-h 必須要比 32 大
- kafka 不能自動重連,需要手動重啟
- 在 jetson 設備上,無法通過 SSH 連接進行 X11 桌面轉發,即不能遠程顯示
- deepstream 中的模型寬度需要是 4 的倍數,高度需要是 2 的倍數
- Triton 目前只支持單張 GPU 上推理,需要在模型中進行指定
- 一些模型的輸出結果與 TAO 中推理結果不同,原因是縮放演算法存在區別
- 動態修改解析度支持不太好
- OTA 模式只支持相同的網路進行更新
- gstreamer 的 sink 元件發送 QOS 事件會導致記憶體泄漏,為了避免這個問題,需要在 sink 中設定 qos=0
- objectDetector_FasterRCNN 示例僅能在默認 tensorrt 插件下運行
- 對于 TAO 工具中的模型,需要編譯 OSS 模塊
- 在 T4 平臺上使用 480.63.01 版本的驅動時,會有 2% 到 4% 的性能下降,解決方法是使用 465+ 的其它版本驅動
- 在 NX 和 AGX 上的 DLA 性能要比 5.1 版本的低一些,原因是一些新的層運行在 DLA 上 ,來解放更多 GPU(DLA 要比 GPU 弱)
- 在 nano TX1 TX2 上運行 deepstream-app 時,會看到很多警告:A lot of buffers are being dropped,可以使用性能最好的 tracker 進行跟蹤,比如 ll-config-file= config_tracker_NvDCF_max_perf.yml
- YoloV3,faster rcnn,ssd,dssd 與 5.1 版本相比速度慢一些,因為 TAO3.0 的模型要比之前版本的重
- deepstream 不支持在 16GB 版本的 NX進行安裝,因為 jetpack 已經幾乎占滿了 16 GB 記憶體,建議采用 32GB 的 SD 卡
- Rivermax SDK 不是 deepstream 的組成部分,因此出現下邊的警告時可以忽略:GStreamer-WARNING **: 11:38:46.882: Failed to load plugin '/usr/lib/x86_64-linux-gnu/gstreamer1.0/deepstream/libnvdsgst_udp.so': librivermax.so.0: cannot open shared object file: No such file or directory
- 在 deepstream triton docker 中,與 GstVideoAggregator 相關的警告都可以忽略
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/355431.html
標籤:其他
