1 环境配置
1.1 源码下载
1 下载YOLOv3参数
https://pjreddie.com/media/files/yolov3.weights
https://pjreddie.com/media/files/yolov3-tiny.weights
放在detector/YOLOv3/weight/
目录下。
2 下载deepsort参数:
在谷歌云盘或百度云(密码:fbuw)中下载ckpt.t7,放入deep_sort/deep/checkpoint/
目录下。
1.2 依赖
系统:Window10
IDE:Pycharm+Anaconda
在Anaconda Prompt内使用pip install安装下面的依赖:
Python3.6
numpy
scipy
opencv-python
sklearn
vizer
edict
pillow-6.2.2
pyyaml
easydict
安装依赖时,如果下载过慢可以使用清华镜像,像这样:
pip install 名称 -i https://pypi.tuna.tsinghua.edu.cn/simple
pillow不能使用最新版本,最新版本缺少PILLOW_VERSON模块,将导致报错,所以我使用pillow-6.2.2版本。
在Pytorch官网下载所需版本的Pytorch和torchvision。下面是我选择的版本。
PyTorch-1.1.0
torchvision-0.3.0
2 代码实现
使用终端进入项目目录下,输入命令python yolov3_deepsort.py VIDEO_PATH
:
加载完成后,即可开始检测,放一张截图
用我自己的笔记本进行测试,用cpu测试时的FPS=0.5,用gpu测试时的FPS=3。这检测速度实在是太慢了。
程序能够运行起来了,接下来就是要去想办法修改参数、训练自己的数据集了。
第二次更新:
使用终端运行太麻烦了,对yolov3_deepsort.py
文件内的main
进行修改,VIDEO_PATH为视频的路径。
if __name__ == "__main__":
VIDEO_PATH = "E:/Activities/fwwb2019/code/keras-yolo3-master/test/video2.mp4"
parser = argparse.ArgumentParser()
parser.add_argument("--VIDEO_PATH", type=str, default=VIDEO_PATH)
parser.add_argument("--config_detection", type=str, default="./configs/yolov3.yaml")
parser.add_argument("--config_deepsort", type=str, default="./configs/deep_sort.yaml")
parser.add_argument("--ignore_display", dest="display", action="store_false", default=True)
parser.add_argument("--frame_interval", type=int, default=1)
parser.add_argument("--display_width", type=int, default=800)
parser.add_argument("--display_height", type=int, default=600)
parser.add_argument("--save_path", type=str, default="./demo/demo.avi")
parser.add_argument("--cpu", dest="use_cuda", action="store_false", default=True)
parser.add_argument("--camera", action="store", dest="cam", type=int, default="-1")
args = parser.parse_args()
cfg = get_config()
cfg.merge_from_file(args.config_detection)
cfg.merge_from_file(args.config_deepsort)
with VideoTracker(cfg, args) as vdo_trk:
vdo_trk.run()
评论(0)
您还未登录,请登录后发表或查看评论