{"id":13520926,"url":"https://github.com/paganpasta/eqxvision","last_synced_at":"2025-03-31T20:30:24.701Z","repository":{"id":49519318,"uuid":"517446478","full_name":"paganpasta/eqxvision","owner":"paganpasta","description":"A Python package of computer vision models for the Equinox ecosystem.","archived":false,"fork":false,"pushed_at":"2024-07-19T20:33:28.000Z","size":16481,"stargazers_count":104,"open_issues_count":8,"forks_count":12,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-03-03T12:06:15.584Z","etag":null,"topics":["equinox","python","pytorch","vision"],"latest_commit_sha":null,"homepage":"https://eqxvision.readthedocs.io","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/paganpasta.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-07-24T22:02:02.000Z","updated_at":"2025-02-04T15:33:51.000Z","dependencies_parsed_at":"2024-01-07T10:51:30.939Z","dependency_job_id":"a8a99465-7661-4a13-96ec-4a84b89acc9b","html_url":"https://github.com/paganpasta/eqxvision","commit_stats":{"total_commits":127,"total_committers":3,"mean_commits":"42.333333333333336","dds":"0.023622047244094446","last_synced_commit":"7da790c7bfae76a3631a269b67c4846c329f1fa5"},"previous_names":[],"tags_count":26,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/paganpasta%2Feqxvision","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/paganpasta%2Feqxvision/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/paganpasta%2Feqxvision/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/paganpasta%2Feqxvision/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/paganpasta","download_url":"https://codeload.github.com/paganpasta/eqxvision/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246535705,"owners_count":20793308,"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":["equinox","python","pytorch","vision"],"created_at":"2024-08-01T06:00:24.399Z","updated_at":"2025-03-31T20:30:22.969Z","avatar_url":"https://github.com/paganpasta.png","language":"Python","funding_links":[],"categories":["Models and Projects","Libraries"],"sub_categories":["New Libraries","Inactive Libraries"],"readme":"# Eqxvision\n[![PyPI](https://img.shields.io/pypi/v/eqxvision?style=flat-square)](https://pypi.org/project/eqxvision/) \n[![Github](https://img.shields.io/badge/Documentation-link-yellowgreen?style=flat-square)](https://eqxvision.readthedocs.io/en/latest/)\n[![GitHub Release Date](https://img.shields.io/github/release-date/paganpasta/eqxvision?style=flat-square)](https://github.com/paganpasta/eqxvision/releases) \n[![GitHub](https://img.shields.io/github/license/paganpasta/eqxvision?style=flat-square)](https://github.com/paganpasta/eqxvision/blob/main/LICENSE.md)\n\nEqxvision is a package of popular computer vision model architectures built using [Equinox](https://docs.kidger.site/equinox/).\n\n## Installation\n\nUse the package manager [pip](https://pip.pypa.io/en/stable/) to install eqxvision.\n\n```bash\npip install eqxvision\n```\n\n*requires:* `python\u003e=3.7`\n\n*optional:* `torch`, only if `pretrained` models are required. \n\n## Documentation\n\nAvailable at [https://eqxvision.readthedocs.io/en/latest/](https://eqxvision.readthedocs.io/en/latest/).\n\n## Usage\n\nPicking a model and doing a forward pass is as simple as ...\n\n```python\n    import jax\n    import jax.random as jr\n    import equinox as eqx\n    from eqxvision.models import alexnet\n    from eqxvision.utils import CLASSIFICATION_URLS\n    \n    \n    @eqx.filter_jit\n    def forward(net, images, key):\n        keys = jax.random.split(key, images.shape[0])\n        output = jax.vmap(net, axis_name=('batch'))(images, key=keys)\n        ...\n        \n    net = alexnet(torch_weights=CLASSIFICATION_URLS['alexnet'])\n    \n    images = jr.uniform(jr.PRNGKey(0), shape=(1,3,224,224))\n    output = forward(net, images, jr.PRNGKey(0))\n```\n\n## What's New?\n\n- `FCN`, `DeepLabV3` and `LRASPP` added as new image segmentation models.\n- Backward incompatible changes to `v0.2.0` for loading a `pretrained` model.\n- Almost all image classification models are ported from `torchvision`.\n- New tutorial for generating `adversarial examples` and others coming soon.\n\n## Get Started!\n\nStart with any one of these easy to follow [tutorials](https://eqxvision.readthedocs.io/en/latest/getting_started/Transfer_Learning/). \n       \n       \n## Tips\n- Better to use `@equinox.filter_jit` instead of `@jax.jit`.\n- Use `jax.{v,p}map` with `axis_name='batch'` when using models that use batch normalisation.\n- Don't forget to switch to `inference` mode for evaluations. (`model = eqx.tree_inference(model)`)\n- Initialise Optax optimisers as `optim.init(eqx.filter(net, eqx.is_array))`. ([See here.](https://docs.kidger.site/equinox/faq/#optax-is-throwing-an-error))\n\n\n## Contributing\nPull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.\n\n### Development Process\nIf you plan to modify the code or documentation, please follow the steps below:\n\n1. Fork the repository and create your branch from `dev`.\n2. If you have modified the code (new feature or bug-fix), please add unit tests.\n3. If you have changed APIs, update the documentation. Make sure the documentation builds. `mkdocs serve`\n4. Ensure the test suite passes. `pytest tests -vvv`\n5. Make sure your code passes the formatting checks. Automatically checked with a `pre-commit` hook. \n\n\n## Acknowledgements\n- [Equinox](https://github.com/patrick-kidger/equinox)\n- [Patrick Kidger](https://github.com/patrick-kidger)\n- [Torchvision](https://pytorch.org/vision/stable/index.html)\n\n## License\n[MIT](https://choosealicense.com/licenses/mit/)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpaganpasta%2Feqxvision","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpaganpasta%2Feqxvision","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpaganpasta%2Feqxvision/lists"}