<p align="center">
<br>
<img src="./docs/assets/logo.png" height="60" width="60"/>
<br>
</p>
<h1 align="center">EzFlow</h1>
<h3 align="center">A modular PyTorch library for optical flow estimation using neural networks</h3>
<div align='center'>
[![Tests](https://github.com/neu-vig/ezflow/actions/workflows/package-test.yml/badge.svg)](https://github.com/neu-vig/ezflow/actions/workflows/package-test.yml)
[![Docs](https://readthedocs.org/projects/ezflow/badge/?version=latest)](https://ezflow.readthedocs.io/en/latest/?badge=latest)
[![Downloads](https://static.pepy.tech/badge/ezflow)](https://pepy.tech/project/ezflow)
<!-- [![Code style](https://github.com/neu-vig/ezflow/actions/workflows/linting.yml/badge.svg)](https://github.com/neu-vig/ezflow/actions/workflows/linting.yml) -->
<!-- [![Code coverage](https://github.com/neu-vig/ezflow/actions/workflows/codecov.yml/badge.svg)](https://github.com/neu-vig/ezflow/actions/workflows/codecov.yml) -->
**[Documentation](https://ezflow.readthedocs.io/en/latest/)** | **[Tutorials](https://ezflow.readthedocs.io/en/latest/tutorials/index.html)**
</div>
## Installation
### From source (recommended)
```shell
git clone https://github.com/neu-vig/ezflow
cd ezflow/
python setup.py install
```
### From PyPI
```shell
pip install ezflow
```
___
### Models supported
- [x] [DICL](https://arxiv.org/abs/2010.14851)
- [x] [DCVNet](https://jianghz.me/files/DCVNet_camera_ready_wacv2023.pdf) ([1 checkpoint](./configs/README.md))
- [x] [FlowNetS](https://arxiv.org/abs/1504.06852)
- [x] [FlowNetC](https://arxiv.org/abs/1504.06852) ([3 checkpoints](./configs/README.md))
- [x] [PWCNet](https://arxiv.org/abs/1709.02371) ([3 checkpoints](./configs/README.md))
- [x] [RAFT](https://arxiv.org/abs/2003.12039) ([3 checkpoints](./configs/README.md))
- [x] [VCN](https://papers.nips.cc/paper/2019/hash/bbf94b34eb32268ada57a3be5062fe7d-Abstract.html)
### Datasets supported
- [x] [AutoFlow](https://autoflow-google.github.io/)
- [x] [FlyingChairs](https://lmb.informatik.uni-freiburg.de/resources/datasets/FlyingChairs.en.html#flyingchairs)
- [x] [HD1K](http://hci-benchmark.iwr.uni-heidelberg.de/)
- [x] [KITTI](http://www.cvlibs.net/datasets/kitti/eval_scene_flow.php?benchmark=flow)
- [x] [Kubric](https://github.com/google-research/kubric)
- [x] [MPI Sintel](http://sintel.is.tue.mpg.de/)
- [x] [SceneFlow Monkaa](https://lmb.informatik.uni-freiburg.de/resources/datasets/SceneFlowDatasets.en.html)
- [x] [SceneFlow Driving](https://lmb.informatik.uni-freiburg.de/resources/datasets/SceneFlowDatasets.en.html)
- [x] [SceneFlow FlyingThings3D](https://lmb.informatik.uni-freiburg.de/resources/datasets/SceneFlowDatasets.en.html)
- [x] [SceneFlow FlyingThings3D subset](https://lmb.informatik.uni-freiburg.de/resources/datasets/SceneFlowDatasets.en.html)
___
### Results and Pre-trained checkpoints
- #### DCVNet | [model config](./configs/models/dcvnet.yaml) | [paper](https://jianghz.me/files/DCVNet_camera_ready_wacv2023.pdf)
| Training Dataset | Training Config | ckpts | Sintel Clean (training) | Sintel Final(training)| KITTI2015 AEPE | KITTI2015 F1-all |
|-----------------------------------------|-------------------------------------------------------------------------|----------------------------------------------------------------------------------------|-------------------------|-----------------------|----------------|------------------|
| FlyingThings3DSubset + Monkaa + Driving | [config](./configs/trainers/dcvnet/dcvnet_sceneflow_baseline.yaml) | [download](https://jianghz.me/files/ezflow_ckpts/dcvnet_sceneflow_step800k.pth) | 1.90 | 3.35 | 4.75 | 23.41% |
- #### FlowNetC | [model config](./configs/models/flownet_c.yaml) | [arXiv](https://arxiv.org/abs/1504.06852)
| Training Dataset | Training Config | ckpts | Sintel Clean (training) | Sintel Final(training)| KITTI2015 AEPE | KITTI2015 F1-all |
|------------------|-------------------------------------------------------------------------|----------------------------------------------------------------------------------------|-------------------------|-----------------------|----------------|------------------|
| Chairs | [config](./configs/trainers/flownetc/flownetc_chairs_baseline.yaml) | [download](https://jianghz.me/files/ezflow_ckpts/flownetc_chairs_step1200k.pth) | 3.41 | 4.94 | 14.84 | 54.23% |
| Chairs -> Things | [config](./configs/trainers/flownetc/flownetc_things_baseline.yaml) | [download](https://jianghz.me/files/ezflow_ckpts/flownetc_chairs_things_step1574k.pth) | 2.93 | 4.48 | 12.47 | 45.89% |
| Kubric | [config](./configs/trainers/flownetc/flownetc_kubric_improved_aug.yaml) | [download](https://jianghz.me/files/ezflow_ckpts/flownetc_kubric_step1200k.pth) | 3.57 | 3.96 | 12.11 | 36.35% |
- #### PWC-Net | [model config](./configs/models/pwcnet.yaml) | [arXiv](https://arxiv.org/abs/1709.02371)
| Training Dataset | Training Config | ckpts | Sintel Clean (training) | Sintel Final(training)| KITTI2015 AEPE | KITTI2015 F1-all |
|------------------|---------------------------------------------------------------------|-------------------------------------------------------------------------------------|-------------------------|-----------------------|----------------|------------------|
| Chairs | [config](./configs/trainers/pwcnet/pwcnet_chairs_baseline.yaml) | [download](https://jianghz.me/files/ezflow_ckpts/pwcnet_chairs_step1200k.pth) | 3.5 | 4.73 | 17.81 | 51.76% |
| Chairs -> Things | [config](./configs/trainers/pwcnet/pwcnet_things_baseline.yaml) | [download](https://jianghz.me/files/ezflow_ckpts/pwcnet_chairs_things_step2400k.pth)| 2.06 | 3.43 | 11.04 | 32.68% |
| Kubric | [config](./configs/trainers/pwcnet/pwcnet_kubric_improved_aug.yaml) | [download](https://jianghz.me/files/ezflow_ckpts/pwcnet_kubric_step1200k.pth) | 3.08 | 3.31 | 9.83 | 21.94% |
- #### RAFT | [model config](./configs/models/raft.yaml) | [arXiv](https://arxiv.org/abs/2003.12039)
| Training Dataset | Training Config | ckpts | Sintel Clean (training) | Sintel Final(training)| KITTI2015 AEPE | KITTI2015 F1-all |
|------------------|-----------------------------------------------------------------|--------------------------------------------------------------------------------------|-------------------------|-----------------------|----------------|------------------|
| Chairs | [config](./configs/trainers/raft/raft_chairs_baseline.yaml) | [download](https://jianghz.me/files/ezflow_ckpts/raft_chairs_step100k_v2.pth) | 2.23 | 4.56 | 10.45 | 38.93% |
| Chairs -> Things | [config](./configs/trainers/raft/raft_things_baseline.yaml) | [download](https://jianghz.me/files/ezflow_ckpts/raft_chairs_things_step200k_v2.pth) | 1.66 | 2.75 | 5.01 | 16.87% |
| Kubric | [config](./configs/trainers/raft/raft_kubric_improved_aug.yaml) | [download](https://jianghz.me/files/ezflow_ckpts/raft_kubric_step100k_v2.pth) | 2.12 | 2.54 | 6.01 | 17.35% |
___
#### Additional Information
- KITTI dataset has been evaluated with a center crop of size `1224 x 370`.
- FlowNetC and PWC-Net uses `padding` of size `64` for evaluating the KITTI2015 dataset.
- RAFT and DCVNet uses `padding` of size `8` for evaluating the Sintel and KITTI2015 datasets.
___
### References
- [RAFT](https://github.com/princeton-vl/RAFT)
- [DICL-Flow](https://github.com/jytime/DICL-Flow)
- [PWC-Net](https://github.com/NVlabs/PWC-Net)
- [FlowNetPytorch](https://github.com/ClementPinard/FlowNetPytorch)
- [VCN](https://github.com/gengshan-y/VCN)
- [detectron2](https://github.com/facebookresearch/detectron2)
- [CorrelationLayer](https://github.com/oblime/CorrelationLayer)
- [ptflow](https://github.com/hmorimitsu/ptlflow)
<br>
<footer>
<a target="_blank" href="https://icons8.com/icon/3Nj3FNnz36Id/pixels">Pixels</a> icon by <a target="_blank" href="https://icons8.com">Icons8</a>
</footer>
Raw data
{
"_id": null,
"home_page": "https://github.com/neu-vig/ezflow",
"name": "ezflow",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.6",
"maintainer_email": "",
"keywords": "optical flow,pytorch,machine learning,deep learning",
"author": "EzFlow Contributors",
"author_email": "shahnh19@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/34/1f/7a2195dca8c05eac4e40f7c1529e9fbbf99e0b4ca74cb84a9619fe936493/ezflow-0.2.5.tar.gz",
"platform": null,
"description": "<p align=\"center\">\n <br>\n <img src=\"./docs/assets/logo.png\" height=\"60\" width=\"60\"/>\n <br>\n</p>\n\n<h1 align=\"center\">EzFlow</h1>\n<h3 align=\"center\">A modular PyTorch library for optical flow estimation using neural networks</h3>\n\n<div align='center'>\n\n[![Tests](https://github.com/neu-vig/ezflow/actions/workflows/package-test.yml/badge.svg)](https://github.com/neu-vig/ezflow/actions/workflows/package-test.yml)\n[![Docs](https://readthedocs.org/projects/ezflow/badge/?version=latest)](https://ezflow.readthedocs.io/en/latest/?badge=latest)\n[![Downloads](https://static.pepy.tech/badge/ezflow)](https://pepy.tech/project/ezflow) \n\n<!-- [![Code style](https://github.com/neu-vig/ezflow/actions/workflows/linting.yml/badge.svg)](https://github.com/neu-vig/ezflow/actions/workflows/linting.yml) -->\n<!-- [![Code coverage](https://github.com/neu-vig/ezflow/actions/workflows/codecov.yml/badge.svg)](https://github.com/neu-vig/ezflow/actions/workflows/codecov.yml) -->\n\n**[Documentation](https://ezflow.readthedocs.io/en/latest/)** | **[Tutorials](https://ezflow.readthedocs.io/en/latest/tutorials/index.html)**\n\n</div>\n\n\n## Installation\n\n### From source (recommended)\n\n```shell\n\ngit clone https://github.com/neu-vig/ezflow\ncd ezflow/\npython setup.py install\n\n```\n\n### From PyPI\n\n```shell\n\npip install ezflow\n\n```\n___\n\n### Models supported\n\n- [x] [DICL](https://arxiv.org/abs/2010.14851)\n- [x] [DCVNet](https://jianghz.me/files/DCVNet_camera_ready_wacv2023.pdf) ([1 checkpoint](./configs/README.md))\n- [x] [FlowNetS](https://arxiv.org/abs/1504.06852)\n- [x] [FlowNetC](https://arxiv.org/abs/1504.06852) ([3 checkpoints](./configs/README.md))\n- [x] [PWCNet](https://arxiv.org/abs/1709.02371) ([3 checkpoints](./configs/README.md)) \n- [x] [RAFT](https://arxiv.org/abs/2003.12039) ([3 checkpoints](./configs/README.md))\n- [x] [VCN](https://papers.nips.cc/paper/2019/hash/bbf94b34eb32268ada57a3be5062fe7d-Abstract.html)\n\n### Datasets supported\n\n- [x] [AutoFlow](https://autoflow-google.github.io/)\n- [x] [FlyingChairs](https://lmb.informatik.uni-freiburg.de/resources/datasets/FlyingChairs.en.html#flyingchairs)\n- [x] [HD1K](http://hci-benchmark.iwr.uni-heidelberg.de/)\n- [x] [KITTI](http://www.cvlibs.net/datasets/kitti/eval_scene_flow.php?benchmark=flow)\n- [x] [Kubric](https://github.com/google-research/kubric)\n- [x] [MPI Sintel](http://sintel.is.tue.mpg.de/)\n- [x] [SceneFlow Monkaa](https://lmb.informatik.uni-freiburg.de/resources/datasets/SceneFlowDatasets.en.html)\n- [x] [SceneFlow Driving](https://lmb.informatik.uni-freiburg.de/resources/datasets/SceneFlowDatasets.en.html)\n- [x] [SceneFlow FlyingThings3D](https://lmb.informatik.uni-freiburg.de/resources/datasets/SceneFlowDatasets.en.html)\n- [x] [SceneFlow FlyingThings3D subset](https://lmb.informatik.uni-freiburg.de/resources/datasets/SceneFlowDatasets.en.html)\n\n___\n\n### Results and Pre-trained checkpoints\n\n- #### DCVNet | [model config](./configs/models/dcvnet.yaml) | [paper](https://jianghz.me/files/DCVNet_camera_ready_wacv2023.pdf)\n| Training Dataset | Training Config | ckpts | Sintel Clean (training) | Sintel Final(training)| KITTI2015 AEPE | KITTI2015 F1-all |\n|-----------------------------------------|-------------------------------------------------------------------------|----------------------------------------------------------------------------------------|-------------------------|-----------------------|----------------|------------------|\n| FlyingThings3DSubset + Monkaa + Driving | [config](./configs/trainers/dcvnet/dcvnet_sceneflow_baseline.yaml) | [download](https://jianghz.me/files/ezflow_ckpts/dcvnet_sceneflow_step800k.pth) | 1.90 | 3.35 | 4.75 | 23.41% |\n\n- #### FlowNetC | [model config](./configs/models/flownet_c.yaml) | [arXiv](https://arxiv.org/abs/1504.06852)\n\n| Training Dataset | Training Config | ckpts | Sintel Clean (training) | Sintel Final(training)| KITTI2015 AEPE | KITTI2015 F1-all |\n|------------------|-------------------------------------------------------------------------|----------------------------------------------------------------------------------------|-------------------------|-----------------------|----------------|------------------|\n| Chairs | [config](./configs/trainers/flownetc/flownetc_chairs_baseline.yaml) | [download](https://jianghz.me/files/ezflow_ckpts/flownetc_chairs_step1200k.pth) | 3.41 | 4.94 | 14.84 | 54.23% |\n| Chairs -> Things | [config](./configs/trainers/flownetc/flownetc_things_baseline.yaml) | [download](https://jianghz.me/files/ezflow_ckpts/flownetc_chairs_things_step1574k.pth) | 2.93 | 4.48 | 12.47 | 45.89% |\n| Kubric | [config](./configs/trainers/flownetc/flownetc_kubric_improved_aug.yaml) | [download](https://jianghz.me/files/ezflow_ckpts/flownetc_kubric_step1200k.pth) | 3.57 | 3.96 | 12.11 | 36.35% |\n\n- #### PWC-Net | [model config](./configs/models/pwcnet.yaml) | [arXiv](https://arxiv.org/abs/1709.02371)\n\n| Training Dataset | Training Config | ckpts | Sintel Clean (training) | Sintel Final(training)| KITTI2015 AEPE | KITTI2015 F1-all |\n|------------------|---------------------------------------------------------------------|-------------------------------------------------------------------------------------|-------------------------|-----------------------|----------------|------------------|\n| Chairs | [config](./configs/trainers/pwcnet/pwcnet_chairs_baseline.yaml) | [download](https://jianghz.me/files/ezflow_ckpts/pwcnet_chairs_step1200k.pth) | 3.5 | 4.73 | 17.81 | 51.76% |\n| Chairs -> Things | [config](./configs/trainers/pwcnet/pwcnet_things_baseline.yaml) | [download](https://jianghz.me/files/ezflow_ckpts/pwcnet_chairs_things_step2400k.pth)| 2.06 | 3.43 | 11.04 | 32.68% |\n| Kubric | [config](./configs/trainers/pwcnet/pwcnet_kubric_improved_aug.yaml) | [download](https://jianghz.me/files/ezflow_ckpts/pwcnet_kubric_step1200k.pth) | 3.08 | 3.31 | 9.83 | 21.94% |\n\n\n- #### RAFT | [model config](./configs/models/raft.yaml) | [arXiv](https://arxiv.org/abs/2003.12039)\n\n| Training Dataset | Training Config | ckpts | Sintel Clean (training) | Sintel Final(training)| KITTI2015 AEPE | KITTI2015 F1-all |\n|------------------|-----------------------------------------------------------------|--------------------------------------------------------------------------------------|-------------------------|-----------------------|----------------|------------------|\n| Chairs | [config](./configs/trainers/raft/raft_chairs_baseline.yaml) | [download](https://jianghz.me/files/ezflow_ckpts/raft_chairs_step100k_v2.pth) | 2.23 | 4.56 | 10.45 | 38.93% |\n| Chairs -> Things | [config](./configs/trainers/raft/raft_things_baseline.yaml) | [download](https://jianghz.me/files/ezflow_ckpts/raft_chairs_things_step200k_v2.pth) | 1.66 | 2.75 | 5.01 | 16.87% |\n| Kubric | [config](./configs/trainers/raft/raft_kubric_improved_aug.yaml) | [download](https://jianghz.me/files/ezflow_ckpts/raft_kubric_step100k_v2.pth) | 2.12 | 2.54 | 6.01 | 17.35% |\n\n___\n\n#### Additional Information\n\n- KITTI dataset has been evaluated with a center crop of size `1224 x 370`.\n- FlowNetC and PWC-Net uses `padding` of size `64` for evaluating the KITTI2015 dataset.\n- RAFT and DCVNet uses `padding` of size `8` for evaluating the Sintel and KITTI2015 datasets.\n___\n### References\n\n- [RAFT](https://github.com/princeton-vl/RAFT)\n- [DICL-Flow](https://github.com/jytime/DICL-Flow)\n- [PWC-Net](https://github.com/NVlabs/PWC-Net)\n- [FlowNetPytorch](https://github.com/ClementPinard/FlowNetPytorch)\n- [VCN](https://github.com/gengshan-y/VCN)\n- [detectron2](https://github.com/facebookresearch/detectron2)\n- [CorrelationLayer](https://github.com/oblime/CorrelationLayer)\n- [ptflow](https://github.com/hmorimitsu/ptlflow)\n\n\n\n\n<br>\n\n<footer>\n<a target=\"_blank\" href=\"https://icons8.com/icon/3Nj3FNnz36Id/pixels\">Pixels</a> icon by <a target=\"_blank\" href=\"https://icons8.com\">Icons8</a>\n</footer>\n\n\n\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "A PyTorch library for optical flow estimation using neural networks",
"version": "0.2.5",
"project_urls": {
"Homepage": "https://github.com/neu-vig/ezflow",
"Source": "https://github.com/neu-vig/ezflow"
},
"split_keywords": [
"optical flow",
"pytorch",
"machine learning",
"deep learning"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "bd7df342244a73d764599f296b910db23e40b3012208e3253f5b262476ab6b06",
"md5": "fec2542ece67de2b68791a6a8b0341b5",
"sha256": "b54d9ecaf18767f6dacb4916a39bc56a00092ebbb8beb34b325eba71990c3b7b"
},
"downloads": -1,
"filename": "ezflow-0.2.5-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "fec2542ece67de2b68791a6a8b0341b5",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": ">=3.6",
"size": 140640,
"upload_time": "2023-12-09T03:48:26",
"upload_time_iso_8601": "2023-12-09T03:48:26.097682Z",
"url": "https://files.pythonhosted.org/packages/bd/7d/f342244a73d764599f296b910db23e40b3012208e3253f5b262476ab6b06/ezflow-0.2.5-py2.py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "341f7a2195dca8c05eac4e40f7c1529e9fbbf99e0b4ca74cb84a9619fe936493",
"md5": "82049183aa7af92d953dbe811ab87998",
"sha256": "3a1d69365d77303843247a38aabe954c797e5797f22b6e9bc6264905774ce997"
},
"downloads": -1,
"filename": "ezflow-0.2.5.tar.gz",
"has_sig": false,
"md5_digest": "82049183aa7af92d953dbe811ab87998",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6",
"size": 130599,
"upload_time": "2023-12-09T03:48:28",
"upload_time_iso_8601": "2023-12-09T03:48:28.516220Z",
"url": "https://files.pythonhosted.org/packages/34/1f/7a2195dca8c05eac4e40f7c1529e9fbbf99e0b4ca74cb84a9619fe936493/ezflow-0.2.5.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-12-09 03:48:28",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "neu-vig",
"github_project": "ezflow",
"travis_ci": false,
"coveralls": true,
"github_actions": true,
"requirements": [
{
"name": "absl-py",
"specs": [
[
"==",
"0.13.0"
]
]
},
{
"name": "alabaster",
"specs": [
[
"==",
"0.7.12"
]
]
},
{
"name": "antlr4-python3-runtime",
"specs": [
[
"==",
"4.8"
]
]
},
{
"name": "appdirs",
"specs": [
[
"==",
"1.4.4"
]
]
},
{
"name": "argh",
"specs": [
[
"==",
"0.26.2"
]
]
},
{
"name": "arrow",
"specs": [
[
"==",
"0.15.1"
]
]
},
{
"name": "attrs",
"specs": []
},
{
"name": "Babel",
"specs": [
[
"==",
"2.9.1"
]
]
},
{
"name": "backports.entry-points-selectable",
"specs": [
[
"==",
"1.1.0"
]
]
},
{
"name": "binaryornot",
"specs": [
[
"==",
"0.4.4"
]
]
},
{
"name": "black",
"specs": [
[
"==",
"21.7b0"
]
]
},
{
"name": "bleach",
"specs": [
[
"==",
"3.3.0"
]
]
},
{
"name": "brotlipy",
"specs": [
[
"==",
"0.7.0"
]
]
},
{
"name": "bump2version",
"specs": [
[
"==",
"0.5.11"
]
]
},
{
"name": "cachetools",
"specs": [
[
"==",
"4.2.2"
]
]
},
{
"name": "certifi",
"specs": [
[
"==",
"2022.12.7"
]
]
},
{
"name": "cffi",
"specs": [
[
"==",
"1.14.6"
]
]
},
{
"name": "cfgv",
"specs": [
[
"==",
"3.3.0"
]
]
},
{
"name": "chardet",
"specs": [
[
"==",
"4.0.0"
]
]
},
{
"name": "charset-normalizer",
"specs": [
[
"==",
"2.0.1"
]
]
},
{
"name": "click",
"specs": [
[
"==",
"8.0.1"
]
]
},
{
"name": "colorama",
"specs": [
[
"==",
"0.4.4"
]
]
},
{
"name": "coverage",
"specs": [
[
"==",
"5.5"
]
]
},
{
"name": "cryptography",
"specs": [
[
"==",
"3.4.8"
]
]
},
{
"name": "cycler",
"specs": [
[
"==",
"0.10.0"
]
]
},
{
"name": "distlib",
"specs": [
[
"==",
"0.3.6"
]
]
},
{
"name": "dnspython",
"specs": [
[
"==",
"1.16.0"
]
]
},
{
"name": "docopt",
"specs": [
[
"==",
"0.6.2"
]
]
},
{
"name": "docutils",
"specs": [
[
"==",
"0.17.1"
]
]
},
{
"name": "easydict",
"specs": [
[
"==",
"1.9"
]
]
},
{
"name": "entrypoints",
"specs": [
[
"==",
"0.3"
]
]
},
{
"name": "fett",
"specs": [
[
"==",
"0.3.2"
]
]
},
{
"name": "filelock",
"specs": [
[
"==",
"3.12.2"
]
]
},
{
"name": "flake8",
"specs": [
[
"==",
"3.9.2"
]
]
},
{
"name": "fvcore",
"specs": [
[
"==",
"0.1.5.post20210915"
]
]
},
{
"name": "grpcio",
"specs": [
[
"==",
"1.39.0"
]
]
},
{
"name": "identify",
"specs": [
[
"==",
"2.2.13"
]
]
},
{
"name": "idna",
"specs": [
[
"==",
"3.2"
]
]
},
{
"name": "imagesize",
"specs": [
[
"==",
"1.2.0"
]
]
},
{
"name": "importlib-metadata",
"specs": [
[
"==",
"6.7.0"
]
]
},
{
"name": "iniconfig",
"specs": [
[
"==",
"1.1.1"
]
]
},
{
"name": "iopath",
"specs": [
[
"==",
"0.1.9"
]
]
},
{
"name": "Jinja2",
"specs": [
[
"==",
"3.0.1"
]
]
},
{
"name": "jinja2-time",
"specs": [
[
"==",
"0.2.0"
]
]
},
{
"name": "kiwisolver",
"specs": []
},
{
"name": "Markdown",
"specs": [
[
"==",
"3.3.4"
]
]
},
{
"name": "MarkupSafe",
"specs": [
[
"==",
"2.0.1"
]
]
},
{
"name": "matplotlib",
"specs": [
[
"==",
"3.4.2"
]
]
},
{
"name": "mccabe",
"specs": [
[
"==",
"0.6.1"
]
]
},
{
"name": "mypy-extensions",
"specs": [
[
"==",
"0.4.3"
]
]
},
{
"name": "networkx",
"specs": [
[
"==",
"2.6.2"
]
]
},
{
"name": "nodeenv",
"specs": [
[
"==",
"1.6.0"
]
]
},
{
"name": "numpy",
"specs": [
[
"==",
"1.20.2"
]
]
},
{
"name": "oauthlib",
"specs": [
[
"==",
"3.2.2"
]
]
},
{
"name": "olefile",
"specs": [
[
"==",
"0.46"
]
]
},
{
"name": "omegaconf",
"specs": []
},
{
"name": "opencv-python",
"specs": [
[
"==",
"4.5.3.56"
]
]
},
{
"name": "packaging",
"specs": [
[
"==",
"21.0"
]
]
},
{
"name": "pathspec",
"specs": [
[
"==",
"0.9.0"
]
]
},
{
"name": "pathtools",
"specs": [
[
"==",
"0.1.2"
]
]
},
{
"name": "Pillow",
"specs": []
},
{
"name": "pkginfo",
"specs": [
[
"==",
"1.7.1"
]
]
},
{
"name": "platformdirs",
"specs": [
[
"==",
"3.8.0"
]
]
},
{
"name": "pluggy",
"specs": [
[
"==",
"0.13.1"
]
]
},
{
"name": "portalocker",
"specs": []
},
{
"name": "poyo",
"specs": [
[
"==",
"0.5.0"
]
]
},
{
"name": "pre-commit",
"specs": []
},
{
"name": "protobuf",
"specs": [
[
"==",
"3.18.3"
]
]
},
{
"name": "py",
"specs": [
[
"==",
"1.10.0"
]
]
},
{
"name": "pyasn1",
"specs": [
[
"==",
"0.4.8"
]
]
},
{
"name": "pyasn1-modules",
"specs": [
[
"==",
"0.2.8"
]
]
},
{
"name": "pycodestyle",
"specs": [
[
"==",
"2.7.0"
]
]
},
{
"name": "pycparser",
"specs": [
[
"==",
"2.20"
]
]
},
{
"name": "pyflakes",
"specs": [
[
"==",
"2.3.1"
]
]
},
{
"name": "Pygments",
"specs": [
[
"==",
"2.9.0"
]
]
},
{
"name": "pymongo",
"specs": [
[
"==",
"3.11.4"
]
]
},
{
"name": "pyOpenSSL",
"specs": [
[
"==",
"20.0.1"
]
]
},
{
"name": "pyparsing",
"specs": [
[
"==",
"2.4.7"
]
]
},
{
"name": "PySocks",
"specs": [
[
"==",
"1.7.1"
]
]
},
{
"name": "pytest",
"specs": [
[
"==",
"6.2.4"
]
]
},
{
"name": "python-dateutil",
"specs": [
[
"==",
"2.8.1"
]
]
},
{
"name": "python-slugify",
"specs": [
[
"==",
"5.0.2"
]
]
},
{
"name": "pytz",
"specs": [
[
"==",
"2021.1"
]
]
},
{
"name": "PyYAML",
"specs": [
[
"==",
"5.4.1"
]
]
},
{
"name": "readme-renderer",
"specs": [
[
"==",
"29.0"
]
]
},
{
"name": "regex",
"specs": []
},
{
"name": "requests",
"specs": [
[
"==",
"2.26.0"
]
]
},
{
"name": "requests-oauthlib",
"specs": [
[
"==",
"1.3.0"
]
]
},
{
"name": "requests-toolbelt",
"specs": [
[
"==",
"0.9.1"
]
]
},
{
"name": "rsa",
"specs": [
[
"==",
"4.7.2"
]
]
},
{
"name": "scipy",
"specs": [
[
"==",
"1.7.0"
]
]
},
{
"name": "six",
"specs": []
},
{
"name": "snooty-lextudio",
"specs": [
[
"==",
"1.11.1.dev0"
]
]
},
{
"name": "snowballstemmer",
"specs": [
[
"==",
"2.1.0"
]
]
},
{
"name": "tabulate",
"specs": [
[
"==",
"0.8.9"
]
]
},
{
"name": "tensorboard",
"specs": [
[
"==",
"2.6.0"
]
]
},
{
"name": "tensorboard-data-server",
"specs": [
[
"==",
"0.6.1"
]
]
},
{
"name": "tensorboard-plugin-wit",
"specs": [
[
"==",
"1.8.0"
]
]
},
{
"name": "termcolor",
"specs": [
[
"==",
"1.1.0"
]
]
},
{
"name": "text-unidecode",
"specs": [
[
"==",
"1.3"
]
]
},
{
"name": "toml",
"specs": []
},
{
"name": "tomli",
"specs": [
[
"==",
"1.2.1"
]
]
},
{
"name": "torch",
"specs": [
[
">=",
"1.9.0"
]
]
},
{
"name": "torchmetrics",
"specs": [
[
">=",
"0.5.0"
]
]
},
{
"name": "torchvision",
"specs": [
[
">=",
"0.10.0"
]
]
},
{
"name": "tornado",
"specs": []
},
{
"name": "tqdm",
"specs": []
},
{
"name": "twine",
"specs": [
[
"==",
"1.14.0"
]
]
},
{
"name": "typed-ast",
"specs": []
},
{
"name": "typing-extensions",
"specs": [
[
"==",
"4.6.3"
]
]
},
{
"name": "Unidecode",
"specs": [
[
"==",
"1.3.2"
]
]
},
{
"name": "urllib3",
"specs": [
[
"==",
"1.26.6"
]
]
},
{
"name": "virtualenv",
"specs": [
[
"==",
"20.23.1"
]
]
},
{
"name": "watchdog",
"specs": [
[
"==",
"1.0.2"
]
]
},
{
"name": "webencodings",
"specs": [
[
"==",
"0.5.1"
]
]
},
{
"name": "whichcraft",
"specs": [
[
"==",
"0.6.1"
]
]
},
{
"name": "yacs",
"specs": [
[
"==",
"0.1.8"
]
]
},
{
"name": "zipp",
"specs": [
[
"==",
"3.5.0"
]
]
}
],
"tox": true,
"lcname": "ezflow"
}