jabs-vision 0.1.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,56 @@
1
+ Metadata-Version: 2.3
2
+ Name: jabs-vision
3
+ Version: 0.1.0
4
+ Summary:
5
+ Author: Glen Beane, Alexander Berger-Liedtka, Keith Sheppard
6
+ License: Proprietary
7
+ Requires-Dist: jabs-io
8
+ Requires-Dist: jabs-core
9
+ Requires-Dist: hydra-core>=1.3.2
10
+ Requires-Dist: torch>=2.9.1
11
+ Requires-Dist: torchvision>=0.24.1
12
+ Requires-Dist: mlflow>=3.8.1 ; extra == 'mlflow'
13
+ Requires-Dist: matplotlib>=3.10.8 ; extra == 'plot'
14
+ Requires-Dist: submitit>=1.5.4 ; extra == 'submitit'
15
+ Requires-Dist: timm>=1.0.0 ; extra == 'timm'
16
+ Requires-Dist: wandb>=0.24.0 ; extra == 'wandb'
17
+ Requires-Python: >=3.10, <3.15
18
+ Project-URL: Repository, https://github.com/KumarLabJax/JABS-behavior-classifier
19
+ Project-URL: Issues, https://github.com/KumarLabJax/JABS-behavior-classifier/issues
20
+ Provides-Extra: mlflow
21
+ Provides-Extra: plot
22
+ Provides-Extra: submitit
23
+ Provides-Extra: timm
24
+ Provides-Extra: wandb
25
+ Description-Content-Type: text/markdown
26
+
27
+ # JABS Vision (`jabs-vision`)
28
+
29
+ This package handles raw video processing and deep learning training and inference.
30
+
31
+ ## Overview
32
+
33
+ `jabs-vision` is responsible for converting raw video frames into pose estimation data.
34
+ It houses the heavy machine learning frameworks and GPU-accelerated code.
35
+
36
+ ## Responsibilities
37
+
38
+ - **Pose Estimation Inference**: Running deep learning models (PyTorch) on video frames
39
+ to detect keypoints.
40
+ - **Static Object Detection**
41
+ - **Segmentation Masking**
42
+ - **Identity Matching**: Tracking individual animals across frames using vectorized
43
+ features.
44
+ - **Video Processing**: Handling frame extraction and normalization for input to vision
45
+ models.
46
+
47
+ ## Key Components
48
+
49
+ - `jabs.vision.inference`: Wrappers for pose estimation model execution.
50
+ - `jabs.vision.tracking`: Identity matching and re-identification logic.
51
+
52
+ ## Dependencies
53
+
54
+ - `torch` / `torchvision`
55
+ - `opencv-python-headless`
56
+ - `jabs-io`, `jabs-core`
@@ -0,0 +1,30 @@
1
+ # JABS Vision (`jabs-vision`)
2
+
3
+ This package handles raw video processing and deep learning training and inference.
4
+
5
+ ## Overview
6
+
7
+ `jabs-vision` is responsible for converting raw video frames into pose estimation data.
8
+ It houses the heavy machine learning frameworks and GPU-accelerated code.
9
+
10
+ ## Responsibilities
11
+
12
+ - **Pose Estimation Inference**: Running deep learning models (PyTorch) on video frames
13
+ to detect keypoints.
14
+ - **Static Object Detection**
15
+ - **Segmentation Masking**
16
+ - **Identity Matching**: Tracking individual animals across frames using vectorized
17
+ features.
18
+ - **Video Processing**: Handling frame extraction and normalization for input to vision
19
+ models.
20
+
21
+ ## Key Components
22
+
23
+ - `jabs.vision.inference`: Wrappers for pose estimation model execution.
24
+ - `jabs.vision.tracking`: Identity matching and re-identification logic.
25
+
26
+ ## Dependencies
27
+
28
+ - `torch` / `torchvision`
29
+ - `opencv-python-headless`
30
+ - `jabs-io`, `jabs-core`
@@ -0,0 +1,68 @@
1
+ [project]
2
+ name = "jabs-vision"
3
+ version = "0.1.0"
4
+ description = ""
5
+ readme = "README.md"
6
+ requires-python = ">=3.10,<3.15"
7
+ license = { text = "Proprietary" }
8
+
9
+ authors = [
10
+ { name = "Glen Beane" },
11
+ { name = "Alexander Berger-Liedtka" },
12
+ { name = "Keith Sheppard" },
13
+ ]
14
+
15
+ dependencies = [
16
+ "jabs-io",
17
+ "jabs-core",
18
+ "hydra-core>=1.3.2",
19
+ "torch>=2.9.1",
20
+ "torchvision>=0.24.1",
21
+ ]
22
+
23
+ [tool.uv.sources]
24
+ jabs-io = { workspace = true }
25
+ jabs-core = { workspace = true }
26
+
27
+ [project.optional-dependencies]
28
+ plot = [
29
+ "matplotlib>=3.10.8",
30
+ ]
31
+ mlflow = [
32
+ "mlflow>=3.8.1",
33
+ ]
34
+ wandb = [
35
+ "wandb>=0.24.0",
36
+ ]
37
+ submitit = [
38
+ "submitit>=1.5.4",
39
+ ]
40
+ timm = [
41
+ "timm>=1.0.0",
42
+ ]
43
+
44
+ [dependency-groups]
45
+ dev = [
46
+ {include-group = "lint"},
47
+ {include-group = "test"},
48
+ "pre-commit>=4.2.0,<5.0.0",
49
+ "matplotlib>=3.9.3,<4.0.0",
50
+ ]
51
+ test = [
52
+ "pytest>=8.3.4,<9.0.0",
53
+ "pytest-cov>=7.0.0",
54
+ ]
55
+ lint = [
56
+ "ruff>=0.11.5,<0.12.0",
57
+ ]
58
+
59
+ [project.urls]
60
+ Repository = "https://github.com/KumarLabJax/JABS-behavior-classifier"
61
+ Issues = "https://github.com/KumarLabJax/JABS-behavior-classifier/issues"
62
+
63
+ [build-system]
64
+ requires = ["uv_build>=0.9.26,<0.10.0"]
65
+ build-backend = "uv_build"
66
+
67
+ [tool.uv.build-backend]
68
+ module-name = "jabs.vision"
@@ -0,0 +1 @@
1
+ """The jabs.vision package."""