復現(xiàn)經(jīng)典目標跟蹤算法ByteTrack之路:調(diào)通第一個demo
ByteTrack源論文地址:https://arxiv.org/pdf/2110.06864.pdf
ByteTrack開源代碼地址:https://github.com/ifzhang/ByteTrack
本文在官方給出的配置指南編寫,提供了許多避坑方式。
一、將代碼clone到本地
可直接使用Git clone到本地
git clone https://github.com/ifzhang/ByteTrack.git
也可以使用pycharm自帶的方式直接將代碼clone下來。
二、配置環(huán)境
寫在前面:為了不引起各種版本不適配導致報錯的坑,強烈建議不要按照官方給出的步驟,直接寫
pip3 install -r requirements.txt
可以按照下述步驟進行。
1、創(chuàng)建虛擬環(huán)境
打開anaconda prompt 輸入
conda create -n 環(huán)境名 python=X.X
此處python建議使用3.7及以上版本(高版本的pytorch已不再支持python3.6及以下版本)
為方便后續(xù)演示,給出我建立虛擬環(huán)境命令如下:
conda create -n byte_track python=3.7
激活虛擬環(huán)境:
activate byte_track
2、快速安裝pytorch一家
如果使用官方給出的安裝方式可能會出現(xiàn)如下兩個問題:第一,安裝速度過慢;第二,安裝完成后,torch.cuda.is_available()為False。因此,給出如下安裝步驟:
第一步:打開cmd,輸入nvidia-smi
如圖,我本機安裝的是cuda11.6
第二步:打開鏈接https://download.pytorch.org/whl/torch_stable.html 找到自己需要的版本
例如,我的環(huán)境為Windows,cuda版本為11.6,python版本為3.7。那就選擇如圖所示的版本的torch、torchvision和torchaudio。點擊即可下載。
第三步,打開anaconda prompt
activate byte_track
cd 下載目錄
pip install XXX.whl(XXX為torch文件名)
pip install XXX.whl(XXX為torchvision文件名)
pip install XXX.whl(XXX為torchaudio文件名)
下載完成后,輸入python激活python環(huán)境
輸入如下代碼
結果若為true,則安裝成功
3、安裝requirements.txt中的剩余包
由于已安裝部分包,且有一些包已更新(當前時間:2022-09-18)先修改項目文件夾中requirements.txt如下
# TODO: Update with exact module version
numpy
opencv_python
loguru
scikit-image
tqdm
Pillow
thop
ninja
tabulate
tensorboard
lap
motmetrics
filterpy
h5py
# verified versions
onnx==1.8.1
onnxruntime-gpu
onnx-simplifier==0.3.5
然后在anaconda prompt中cd到項目目錄
輸入
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt
4、python3 setup.py develop
先更改setup.py文件
with open("README.md", "r") as f:
修改為
with open("README.md", "r", encoding='utf-8') as f:
cd到項目所在目錄 輸入python3 setup.py develop即可
5、安裝pycocotools
先安裝cpython
pip install cython -i https://pypi.tuna.tsinghua.edu.cn/simple/
下一步如使用官方給出的方式安裝pycocotools可能會出現(xiàn)報錯,可以根據(jù)如下方式安裝
該部分參考https://blog.csdn.net/weixin_46961200/article/details/124344341
1)在https://github.com/pdollar/coco.git下載源碼壓縮包,解壓后放在site-packages文件下,具體路徑可參考我的:D:\MyEnvironment\Anaconda3\envs\byte_track\Lib\site-packages
2)打開cocoapi-master\pythonAPI中的setup.py文件,刪除下面的兩個參數(shù):
3)在anaconda prompt中cd到剛才的cocoapi-master\pythonAPI文件夾下,可參考我的路徑:D:\MyEnvironment\Anaconda3\envs\byte_track\Lib\site-packages\cocoapi-master\PythonAPI輸入
python setup.py build_ext --inplace
python setup.py build_ext install
第一步顯示“已完成代碼的生成”即成功;第二部顯示"Finished processing dependencies for pycocotools==2.0"即成功。
6、安裝cython_bbox
按照官方方式仍然是會報錯,可根據(jù)下述步驟安裝
該部分參考https://blog.csdn.net/JackyAce6880/article/details/123751018
1)下載源碼
鏈接:https://pan.baidu.com/s/1uYC6qhZ0eWjIenOBdoyLtQ
提取碼:fef4
解壓后放在site-packages文件下(site-packages文件夾位置與上一步相同)
2)更改setup.py文件
打開文件夾內(nèi)setup.py文件,將第31行,extra_compile_args=[‘-Wno-cpp’] 修改為 extra_compile_args = {‘gcc’: [‘/Qstd=c99’]}
打開anaconda prompt 執(zhí)行
python setup.py build_ext install
最終顯示Finished processing dependencies for cython-bbox==0.1.3即成功
至此,環(huán)境已配置完成!
三、跑通第一個Demo
下載預訓練模型,可通過我的網(wǎng)盤下載,下載鏈接如下:
鏈接:https://pan.baidu.com/s/1qwecLD57quI__l6_91gvhA
提取碼:zmqn
將下載下來的文件放在項目文件夾 pretrained文件夾下
cd到項目文件夾,輸入
python tools/demo_track.py video -f exps/example/mot/yolox_x_mix_det.py -c pretrained/bytetrack_x_mot17.pth.tar --fp16 --fuse --save_result
即可開始運行,運行結果會自動放入ByteTrack\YOLOX_outputs\yolox_x_mix_det\track_vis文件夾中
至此,ByteTrack的第一個Demo已完成。
四、結語
目前只是用預訓練模型跑通第一個Demo,后續(xù)訓練過程和多類別目標跟蹤,以及使用其他目標檢測網(wǎng)絡的版本將持續(xù)更新,敬請期待…文章來源:http://www.zghlxwxcb.cn/news/detail-845081.html
參考
https://blog.csdn.net/JackyAce6880/article/details/123751018
https://blog.csdn.net/weixin_46961200/article/details/124344341
https://www.ngui.cc/51cto/show-544748.html?action=onClick文章來源地址http://www.zghlxwxcb.cn/news/detail-845081.html
到了這里,關于復現(xiàn)經(jīng)典目標跟蹤算法ByteTrack之路:調(diào)通第一個demo的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!