[JSAC 2022] VaBUS: Edge-Cloud Real-time Video Analytics via Background Understanding and Subtraction
VaBUS is an edge-cloud video analytics system by leveraging background understanding and subtraction. This repo is the implementation of VaBUS, JSAC 2022.
@ARTICLE{wang2022vabus,
author={Wang, Hanling and Li, Qing and Sun, Heyang and Chen, Zuozhou and Hao, Yingqian and Peng, Junkun and Yuan, Zhenhui and Fu, Junsheng and Jiang, Yong},
journal={IEEE Journal on Selected Areas in Communications},
title={VaBUS: Edge-Cloud Real-time Video Analytics via Background Understanding and Subtraction},
year={2022},
volume={},
number={},
pages={1-1},
doi={10.1109/JSAC.2022.3221995}}
Cloud: Python3.8.10 and Ubuntu20.04
Edge: Python3.6.9, C++, and Ubuntu18.04 (Jetson Xavier NX)
- For Python, see src/requirements.txt.
- For Jetson RoI encoding, you need to rebuild ffmpeg. Please refer to jetson_roi_encode/
- dataset/: put your dataset (video or image folder) here
- dataset/ground_truth/: ground_truth results generated by src/generate_encode_size.py and src/generate_inference_res.py for evaluation purpose
- jetson_roi_encode/: for RoI encoding on Jetson
- results/: evaluation results (auto-generated)
- src/cloud.py: main script for cloud running
- src/edge.py: main script for edge running
- src/param.yml: parameter files used by src/cloud.yml and src/edge.yml
- others should be self-explainable
run python cloud.py
run python edge.py
- Build the ffmpeg library for video encoding on Jetson
- Carefully set up the model files under src/models to adapt to your machine
- We cleaned up the code for clarity.
- Any question please ask. Thanks!