Skip to main content

Composable egocentric vision model components for hand and camera geometry pipelines.

Project description

ego-vision

Composable egocentric vision model components and pipelines for hand and camera geometry.

The initial scope is intentionally narrow: raw model wrappers plus an episode-level pipeline boundary for the best VGGT-Omega + HaWoR stack.

episodes of av.VideoFrame
  -> VGGTOmegaModel
  -> HaWoRHandReconstructor
       YoloHandDetector + HaWoRModel + ManoLayer
  -> HaWoRHandMotionInfiller
  -> HandTrackingPipeline result

The egovision.models namespace contains raw model components. The egovision.pipelines namespace owns model scheduling and hand-tracking orchestration.

VGGT-Omega and the HaWoR inference modules needed by the pipeline live under egovision.models, so users do not need separate research-repo checkouts or PYTHONPATH setup. Checkpoints are still loaded from local paths or Hugging Face.

from egovision import (
    EpisodeInput,
    HandTrackingConfig,
    HandTrackingPipeline,
    HaworReconstructionConfig,
    VggtOmegaConfig,
)

pipeline = HandTrackingPipeline(
    HandTrackingConfig(
        hand_reconstruction=HaworReconstructionConfig(batch_size=64),
        camera_pose_estimator=VggtOmegaConfig(batch_size=1),
    )
)
results = pipeline.predict_episodes(
    [EpisodeInput(frames=av_frames)]
)

Install

pip install ego-vision

Heavy model dependencies are optional:

pip install "ego-vision[models]"

Development

uv sync --dev
uv run pytest
uv run ruff check --force-exclude .
uv run ruff format --force-exclude --check .
uv run ty check

Local hooks use the same commands:

uv run pre-commit run --all-files

Release

Publishing is handled by GitHub Actions with PyPI trusted publishing.

To release:

  1. Bump version in pyproject.toml.
  2. Push the commit to main.
  3. The Publish package workflow builds the wheel and sdist, publishes to PyPI, then creates the vX.Y.Z tag and GitHub release.

The workflow can also be run manually from GitHub Actions with target testpypi or pypi. The normal release path only needs the pypi trusted publishing environment configured for the ego-vision project.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ego_vision-0.1.17.tar.gz (118.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ego_vision-0.1.17-py3-none-any.whl (139.3 kB view details)

Uploaded Python 3

File details

Details for the file ego_vision-0.1.17.tar.gz.

File metadata

  • Download URL: ego_vision-0.1.17.tar.gz
  • Upload date:
  • Size: 118.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for ego_vision-0.1.17.tar.gz
Algorithm Hash digest
SHA256 c063d16f34e60c7dc5f90b05e31fdde828d1108327d4d43a6e5a4fc63d00f390
MD5 0dbe7c409a8f8a2bdc0d3c19ab4f16cf
BLAKE2b-256 1b7d7f425dd5c7667a4b3933c0561e604122364e9fd516ad5dae5240ed741457

See more details on using hashes here.

Provenance

The following attestation bundles were made for ego_vision-0.1.17.tar.gz:

Publisher: pypi-release.yml on macrodata-labs/ego-vision

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ego_vision-0.1.17-py3-none-any.whl.

File metadata

  • Download URL: ego_vision-0.1.17-py3-none-any.whl
  • Upload date:
  • Size: 139.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for ego_vision-0.1.17-py3-none-any.whl
Algorithm Hash digest
SHA256 e42750bf2ee92da5d22f8b16f658d6e4d949ac14957ae3a3e18e90b53fb3b346
MD5 3b5edce3b1309a7916ee9a2531dc7413
BLAKE2b-256 76a5fafefd616b61c31e6812d2216dc0c05562aef87d322d8d94d959cec5bc30

See more details on using hashes here.

Provenance

The following attestation bundles were made for ego_vision-0.1.17-py3-none-any.whl:

Publisher: pypi-release.yml on macrodata-labs/ego-vision

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page