{"id":13750895,"url":"https://github.com/lukas-blecher/AutoMask","last_synced_at":"2025-05-09T17:32:55.214Z","repository":{"id":46040994,"uuid":"230953395","full_name":"lukas-blecher/AutoMask","owner":"lukas-blecher","description":"Automatic Rotoscoping/Masking tool powered with Machine Learning for Blender (WIP)","archived":false,"fork":false,"pushed_at":"2020-12-17T18:42:55.000Z","size":3003,"stargazers_count":172,"open_issues_count":3,"forks_count":21,"subscribers_count":15,"default_branch":"master","last_synced_at":"2025-04-14T03:39:38.163Z","etag":null,"topics":["blender","blender-addon","blender-python","deep-learning","machine-learning","mask-segment","masking","motion-tracking","pytorch","rotoscoping"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lukas-blecher.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-12-30T17:20:41.000Z","updated_at":"2025-03-02T04:03:40.000Z","dependencies_parsed_at":"2022-08-29T21:11:25.221Z","dependency_job_id":null,"html_url":"https://github.com/lukas-blecher/AutoMask","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lukas-blecher%2FAutoMask","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lukas-blecher%2FAutoMask/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lukas-blecher%2FAutoMask/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lukas-blecher%2FAutoMask/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lukas-blecher","download_url":"https://codeload.github.com/lukas-blecher/AutoMask/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253295767,"owners_count":21885691,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["blender","blender-addon","blender-python","deep-learning","machine-learning","mask-segment","masking","motion-tracking","pytorch","rotoscoping"],"created_at":"2024-08-03T09:00:21.633Z","updated_at":"2025-05-09T17:32:54.766Z","avatar_url":"https://github.com/lukas-blecher.png","language":"Python","funding_links":[],"categories":["🔮Add-ons [^](#table)","Modeling, Sculpting \u0026 Texturing"],"sub_categories":["🌠Animation [^](#table)","Blender: Plugins \u0026 Addons"],"readme":"# AutoMask - a Blender Add-on for automatic rotoscoping\nThis repository contains a Blender 2.8x Add-on that can mask an object in the `Movie Clip Editor` with the help of Machine Learning.\nAutoMask is the communication between Blender and SiamMask.\n\nHere is an example for the usage of AutoMask.\n![Example](https://github.com/lukas-blecher/AutoMask/blob/master/figures/showcase.gif?raw=true)\n\n## Usage\nFirst select a bounding box of the object. Then hit one of the track buttons. \nThe masks for every frame will be saved in a separate and new Mask Layer. If you are using the single step masking as a starting point for your mask you can also \n### Parameters\n* **Max. Length** is the roughly the maximum amount of pixels a mask segment can trace. The lower this value is the closer the final mask will be to the network output. Bear in mind that the network output is by no means a perfect mask. But it can be a great starting point. \n* **Directions** is the amount of directions (of 8 possible) one mask segment can cover. 2 will produce more controll points but a closer match in the mask, but the [S-Curves ](https://docs.blender.org/manual/en/latest/movie_clip/masking/scurve.html) can also handle 3 different directions.\n* **Threshold** is the amount of pixels that can go in another direction than the rest of a given segment.\n\n\n## Installation\n1. Download the repository:\nDownload the repository as `.zip` file and extract it or clone it to your computer.\n2. Python:\nTo use this Add-on, several 3rd party libraries are required (see `requirements.txt`). You can either install the dependencies to\nthe Blender python or if python is already installed on the system and the python version is compatible with the Blender python version you can also install the dependencies on your system.\n3. Adding the Project to the Python path:\nOpen `automask.py` in your favorite text editor and replace `PYTHON_PATH` with the path to you python site-packages if needed and `PROJECT_DIR` with the path to the directory you downloaded this repository to.\n4. Install Dependencies:\n* PyTorch \nThe neural network that does the heavy lifting is written for [PyTorch](https://pytorch.org/).\nA Nvidia GPU is recommended but not necessarily required. However, it does speed up the process significantly. If you have a supported GPU install pytorch with GPU support.\n* Other Requirements\nMost of the required libraries are standard and easy to install. \n```pip install -r requirements.txt```\n5. Model:\nThe model weights for SiamMask can be downloaded from [http://www.robots.ox.ac.uk/~qwang/SiamMask_VOT.pth](http://www.robots.ox.ac.uk/~qwang/SiamMask_VOT.pth). Save the file to the subfolder `trackers/SiamMask` under the name `model.pth`. \n6. Add to Blender:\n![Installation](https://github.com/lukas-blecher/AutoMask/blob/master/figures/install.gif?raw=true)\n## Acknowledgements\n[SiamMask](https://github.com/foolwood/SiamMask), [THOR](https://github.com/xl-sr/THOR)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flukas-blecher%2FAutoMask","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flukas-blecher%2FAutoMask","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flukas-blecher%2FAutoMask/lists"}