{"data":{"slug":"peterl1n-robustvideomatting","name":"RobustVideoMatting","tagline":"Robust Video Matting in PyTorch, TensorFlow, TensorFlow.js, ONNX, CoreML!","github_url":"https://github.com/PeterL1n/RobustVideoMatting","owner":"PeterL1n","repo":"RobustVideoMatting","owner_avatar_url":"https://avatars.githubusercontent.com/u/7651753?v=4","primary_language":"Python","stars":9422,"forks":1197,"topics":["ai","computer-vision","deep-learning","machine-learning","matting"],"archived":false,"github_pushed_at":"2024-04-02T16:26:48+00:00","maintenance_label":"Dormant","url":"https://www.graphcanon.com/tools/peterl1n-robustvideomatting","markdown_url":"https://www.graphcanon.com/tools/peterl1n-robustvideomatting.md","api_url":"https://www.graphcanon.com/api/graphcanon/tools/peterl1n-robustvideomatting","graph_url":"https://www.graphcanon.com/api/graphcanon/graph?tool=peterl1n-robustvideomatting","description":"Robust Video Matting in PyTorch, TensorFlow, TensorFlow.js, ONNX, CoreML!","homepage_url":"https://peterl1n.github.io/RobustVideoMatting/","license":"GPL-3.0","open_issues":122,"watchers":134,"ai_summary":null,"readme_excerpt":"# Robust Video Matting (RVM)\n\n\n\n<p align=\"center\">English | <a href=\"README_zh_Hans.md\">中文</a></p>\n\nOfficial repository for the paper [Robust High-Resolution Video Matting with Temporal Guidance](https://peterl1n.github.io/RobustVideoMatting/). RVM is specifically designed for robust human video matting. Unlike existing neural models that process frames as independent images, RVM uses a recurrent neural network to process videos with temporal memory. RVM can perform matting in real-time on any videos without additional inputs. It achieves **4K 76FPS** and **HD 104FPS** on an Nvidia GTX 1080 Ti GPU. The project was developed at [ByteDance Inc.](https://www.bytedance.com/)\n\n<br>\n\n## News\n\n* [Nov 03 2021] Fixed a bug in [train.py](https://github.com/PeterL1n/RobustVideoMatting/commit/48effc91576a9e0e7a8519f3da687c0d3522045f).\n* [Sep 16 2021] Code is re-released under GPL-3.0 license.\n* [Aug 25 2021] Source code and pretrained models are published.\n* [Jul 27 2021] Paper is accepted by WACV 2022.\n\n<br>\n\n## Showreel\nWatch the showreel video ([YouTube](https://youtu.be/Jvzltozpbpk), [Bilibili](https://www.bilibili.com/video/BV1Z3411B7g7/)) to see the model's performance. \n\n<p align=\"center\">\n    <a href=\"https://youtu.be/Jvzltozpbpk\">\n        <img src=\"documentation/image/showreel.gif\">\n    </a>\n</p>\n\nAll footage in the video are available in [Google Drive](https://drive.google.com/drive/folders/1VFnWwuu-YXDKG-N6vcjK_nL7YZMFapMU?usp=sharing).\n\n<br>\n\n\n## Demo\n* [Webcam Demo](https://peterl1n.github.io/RobustVideoMatting/#/demo): Run the model live in your browser. Visualize recurrent states.\n* [Colab Demo](https://colab.research.google.com/drive/10z-pNKRnVNsp0Lq9tH1J_XPZ7CBC_uHm?usp=sharing): Test our model on your own videos with free GPU. \n\n<br>\n\n## Download\n\nWe recommend MobileNetv3 models for most use cases. ResNet50 models are the larger variant with small performance improvements. Our model is available on various inference frameworks. See [inference documentation](documentation/inference.md) for more instructions.\n\n<table>\n    <thead>\n        <tr>\n            <td>Framework</td>\n            <td>Download</td>\n            <td>Notes</td>\n        </tr>\n    </thead>\n    <tbody>\n        <tr>\n            <td>PyTorch</td>\n            <td>\n                <a  href=\"https://github.com/PeterL1n/RobustVideoMatting/releases/download/v1.0.0/rvm_mobilenetv3.pth\">rvm_mobilenetv3.pth</a><br>\n                <a  href=\"https://github.com/PeterL1n/RobustVideoMatting/releases/download/v1.0.0/rvm_resnet50.pth\">rvm_resnet50.pth</a>\n            </td>\n            <td>\n                Official weights for PyTorch. <a href=\"documentation/inference.md#pytorch\">Doc</a>\n            </td>\n        </tr>\n        <tr>\n            <td>TorchHub</td>\n            <td>\n                Nothing to Download.\n            </td>\n            <td>\n                Easiest way to use our model in your PyTorch project. <a href=\"documentation/inference.md#torchhub\">Doc</a>\n            </td>\n        </tr>\n        <tr>\n            <td>TorchScript</td>\n            <td>\n                <a  href=\"https://github.com/PeterL1n/RobustVideoMatting/releases/download/v1.0.0/rvm_mobilenetv3_fp32.torchscript\">rvm_mobilenetv3_fp32.torchscript</a><br>\n                <a  href=\"https://github.com/PeterL1n/RobustVideoMatting/releases/download/v1.0.0/rvm_mobilenetv3_fp16.torchscript\">rvm_mobilenetv3_fp16.torchscript</a><br>\n                <a  href=\"https://github.com/PeterL1n/RobustVideoMatting/releases/download/v1.0.0/rvm_resnet50_fp32.torchscript\">rvm_resnet50_fp32.torchscript</a><br>\n                <a  href=\"https://github.com/PeterL1n/RobustVideoMatting/releases/download/v1.0.0/rvm_resnet50_fp16.torchscript\">rvm_resnet50_fp16.torchscript</a>\n            </td>\n            <td>\n                If inference on mobile, consider export int8 quantized models yourself. <a href=\"documentation/inference.md#torchscript\">Doc</a>\n            </td>\n        </tr>\n        <tr>\n            <td>ONNX</td>","github_created_at":"2021-08-30T20:57:44+00:00","created_at":"2026-07-11T12:22:33.441707+00:00","updated_at":"2026-07-11T12:22:37.75914+00:00","categories":[{"slug":"model-training","name":"Model Training","url":"https://www.graphcanon.com/categories/model-training","markdown_url":"https://www.graphcanon.com/categories/model-training.md","api_url":"https://www.graphcanon.com/api/graphcanon/categories/model-training"},{"slug":"inference-serving","name":"Inference & Serving","url":"https://www.graphcanon.com/categories/inference-serving","markdown_url":"https://www.graphcanon.com/categories/inference-serving.md","api_url":"https://www.graphcanon.com/api/graphcanon/categories/inference-serving"},{"slug":"computer-vision","name":"Computer Vision","url":"https://www.graphcanon.com/categories/computer-vision","markdown_url":"https://www.graphcanon.com/categories/computer-vision.md","api_url":"https://www.graphcanon.com/api/graphcanon/categories/computer-vision"}],"tags":[{"slug":"deep-learning","name":"deep-learning"},{"slug":"ai","name":"ai"},{"slug":"machine-learning","name":"machine-learning"},{"slug":"python","name":"python"},{"slug":"matting","name":"matting"},{"slug":"computer-vision","name":"computer-vision"}],"trust":{"provenance":{"is_fork":false,"github_id":401484223,"owner_type":"User","methodology":"github_public_v1","parent_repo":null,"near_duplicate_slugs":[]},"computed_at":"2026-07-11T12:22:34.120Z","maintenance":{"label":"Dormant","score":18,"methodology":"github_public_v1","releases_90d":0,"days_since_push":829,"last_release_at":"2021-09-17T07:31:29Z"},"security_summary":{"status":"no_lockfile","scanner":null,"low_count":0,"high_count":0,"last_scan_at":"2026-07-11T12:22:35.728Z","medium_count":0,"scan_profile":"none","critical_count":0}},"capability_facts":{"scan":{"source":"repo_scan","observed_at":"2026-07-11T12:22:35.422Z"},"languages":{"value":["python"],"source":"github.language","observed_at":"2026-07-11T12:22:35.422Z"},"license_spdx":{"value":"GPL-3.0","source":"github.license","observed_at":"2026-07-11T12:22:35.422Z"}}}}