thirdeyelabs 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,69 @@
1
+ Metadata-Version: 2.5
2
+ Name: thirdeyelabs
3
+ Version: 0.1.0
4
+ Summary: Open road data for autonomous driving on unstructured Indian roads.
5
+ Project-URL: Homepage, https://thirdeyelabs.ai
6
+ Project-URL: Dataset, https://huggingface.co/datasets/thirdeyelabs/indian-road-dataset
7
+ Author: Third Eye Labs
8
+ License: Apache-2.0
9
+ Keywords: adas,autonomous-driving,computer-vision,dataset,india,object-detection
10
+ Classifier: Development Status :: 3 - Alpha
11
+ Classifier: Intended Audience :: Science/Research
12
+ Classifier: License :: OSI Approved :: Apache Software License
13
+ Classifier: Programming Language :: Python :: 3
14
+ Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
15
+ Classifier: Topic :: Scientific/Engineering :: Image Recognition
16
+ Requires-Python: >=3.9
17
+ Provides-Extra: hf
18
+ Requires-Dist: datasets>=2.14.0; extra == 'hf'
19
+ Description-Content-Type: text/markdown
20
+
21
+ # thirdeyelabs
22
+
23
+ Open road data for autonomous driving on unstructured Indian roads.
24
+
25
+ Every major AV dataset (Waymo Open, nuScenes, Argoverse, PandaSet) was captured
26
+ on structured Western roads. This one was not.
27
+
28
+ ```bash
29
+ pip install thirdeyelabs[hf]
30
+ ```
31
+
32
+ ```python
33
+ import thirdeyelabs as tel
34
+
35
+ tel.info()
36
+ # {'frames': 646014, 'clips': 8441, 'detections': 6896202, ...}
37
+
38
+ tel.INDIA_SPECIFIC
39
+ # ['autorickshaw', 'animal', 'vehicle_fallback']
40
+
41
+ ds = tel.load_dataset()
42
+ ```
43
+
44
+ ## The dataset
45
+
46
+ | | |
47
+ |---|---|
48
+ | Frames | 646,014 across 8,441 clips |
49
+ | Detections | 6,896,202 2D boxes |
50
+ | Segmentation | 1,290,463 masks |
51
+ | Classes | 12, BDD100K schema plus India-specific categories |
52
+ | Region | Delhi NCR, India |
53
+ | Sensor | Monocular dashcam, GPS per clip |
54
+ | License | CC BY 4.0 |
55
+
56
+ Three of the twelve categories (`autorickshaw`, `animal`, `vehicle_fallback`)
57
+ have no equivalent in COCO or BDD100K, so a detector trained on those
58
+ benchmarks cannot emit them at all.
59
+
60
+ Dataset: https://huggingface.co/datasets/thirdeyelabs/indian-road-dataset
61
+
62
+ ## Status
63
+
64
+ Early. This release provides dataset access helpers and the taxonomy.
65
+ Simulation environments and benchmark suites are in development.
66
+
67
+ ## License
68
+
69
+ Package: Apache-2.0. Dataset: CC BY 4.0.
@@ -0,0 +1,49 @@
1
+ # thirdeyelabs
2
+
3
+ Open road data for autonomous driving on unstructured Indian roads.
4
+
5
+ Every major AV dataset (Waymo Open, nuScenes, Argoverse, PandaSet) was captured
6
+ on structured Western roads. This one was not.
7
+
8
+ ```bash
9
+ pip install thirdeyelabs[hf]
10
+ ```
11
+
12
+ ```python
13
+ import thirdeyelabs as tel
14
+
15
+ tel.info()
16
+ # {'frames': 646014, 'clips': 8441, 'detections': 6896202, ...}
17
+
18
+ tel.INDIA_SPECIFIC
19
+ # ['autorickshaw', 'animal', 'vehicle_fallback']
20
+
21
+ ds = tel.load_dataset()
22
+ ```
23
+
24
+ ## The dataset
25
+
26
+ | | |
27
+ |---|---|
28
+ | Frames | 646,014 across 8,441 clips |
29
+ | Detections | 6,896,202 2D boxes |
30
+ | Segmentation | 1,290,463 masks |
31
+ | Classes | 12, BDD100K schema plus India-specific categories |
32
+ | Region | Delhi NCR, India |
33
+ | Sensor | Monocular dashcam, GPS per clip |
34
+ | License | CC BY 4.0 |
35
+
36
+ Three of the twelve categories (`autorickshaw`, `animal`, `vehicle_fallback`)
37
+ have no equivalent in COCO or BDD100K, so a detector trained on those
38
+ benchmarks cannot emit them at all.
39
+
40
+ Dataset: https://huggingface.co/datasets/thirdeyelabs/indian-road-dataset
41
+
42
+ ## Status
43
+
44
+ Early. This release provides dataset access helpers and the taxonomy.
45
+ Simulation environments and benchmark suites are in development.
46
+
47
+ ## License
48
+
49
+ Package: Apache-2.0. Dataset: CC BY 4.0.
@@ -0,0 +1,35 @@
1
+ [build-system]
2
+ requires = ["hatchling"]
3
+ build-backend = "hatchling.build"
4
+
5
+ [project]
6
+ name = "thirdeyelabs"
7
+ version = "0.1.0"
8
+ description = "Open road data for autonomous driving on unstructured Indian roads."
9
+ readme = "README.md"
10
+ requires-python = ">=3.9"
11
+ license = { text = "Apache-2.0" }
12
+ authors = [{ name = "Third Eye Labs" }]
13
+ keywords = [
14
+ "autonomous-driving", "computer-vision", "dataset",
15
+ "object-detection", "india", "adas",
16
+ ]
17
+ classifiers = [
18
+ "Development Status :: 3 - Alpha",
19
+ "Intended Audience :: Science/Research",
20
+ "License :: OSI Approved :: Apache Software License",
21
+ "Programming Language :: Python :: 3",
22
+ "Topic :: Scientific/Engineering :: Artificial Intelligence",
23
+ "Topic :: Scientific/Engineering :: Image Recognition",
24
+ ]
25
+ dependencies = []
26
+
27
+ [project.optional-dependencies]
28
+ hf = ["datasets>=2.14.0"]
29
+
30
+ [project.urls]
31
+ Homepage = "https://thirdeyelabs.ai"
32
+ Dataset = "https://huggingface.co/datasets/thirdeyelabs/indian-road-dataset"
33
+
34
+ [tool.hatch.build.targets.wheel]
35
+ packages = ["src/thirdeyelabs"]
@@ -0,0 +1,33 @@
1
+ """Third Eye Labs: open road data for autonomous driving on Indian roads.
2
+
3
+ The dataset is published under CC BY 4.0 at
4
+ https://huggingface.co/datasets/thirdeyelabs/indian-road-dataset
5
+
6
+ >>> import thirdeyelabs as tel
7
+ >>> tel.info()
8
+ >>> tel.CLASSES
9
+ >>> ds = tel.load_dataset() # requires: pip install thirdeyelabs[hf]
10
+ """
11
+
12
+ from .dataset import (
13
+ CLASSES,
14
+ DATASET_ID,
15
+ DATASET_URL,
16
+ INDIA_SPECIFIC,
17
+ STATS,
18
+ info,
19
+ load_dataset,
20
+ )
21
+
22
+ __version__ = "0.1.0"
23
+
24
+ __all__ = [
25
+ "CLASSES",
26
+ "DATASET_ID",
27
+ "DATASET_URL",
28
+ "INDIA_SPECIFIC",
29
+ "STATS",
30
+ "info",
31
+ "load_dataset",
32
+ "__version__",
33
+ ]
@@ -0,0 +1,68 @@
1
+ """Access helpers for the Third Eye Labs Indian road dataset."""
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Any, Dict, List
6
+
7
+ DATASET_ID = "thirdeyelabs/indian-road-dataset"
8
+ DATASET_URL = f"https://huggingface.co/datasets/{DATASET_ID}"
9
+
10
+ #: Detection categories. The taxonomy follows the BDD100K schema, extended with
11
+ #: the classes that matter on Indian roads and have no Western equivalent.
12
+ CLASSES: List[str] = [
13
+ "person",
14
+ "rider",
15
+ "car",
16
+ "truck",
17
+ "bus",
18
+ "motorcycle",
19
+ "bicycle",
20
+ "autorickshaw",
21
+ "animal",
22
+ "vehicle_fallback",
23
+ "traffic_light",
24
+ "traffic_sign",
25
+ ]
26
+
27
+ #: Categories absent from COCO and BDD100K, so no detector trained on those
28
+ #: benchmarks can emit them at all.
29
+ INDIA_SPECIFIC: List[str] = ["autorickshaw", "animal", "vehicle_fallback"]
30
+
31
+ STATS: Dict[str, Any] = {
32
+ "frames": 646_014,
33
+ "clips": 8_441,
34
+ "detections": 6_896_202,
35
+ "segmentation_masks": 1_290_463,
36
+ "classes": len(CLASSES),
37
+ "region": "Delhi NCR, India",
38
+ "sensor": "monocular dashcam",
39
+ "annotation_schema": "BDD100K",
40
+ "license": "CC BY 4.0",
41
+ }
42
+
43
+
44
+ def info() -> Dict[str, Any]:
45
+ """Return dataset statistics and where to get it."""
46
+ return {**STATS, "dataset_id": DATASET_ID, "url": DATASET_URL}
47
+
48
+
49
+ def load_dataset(split: str = "train", **kwargs: Any):
50
+ """Load the dataset from the Hugging Face Hub.
51
+
52
+ Requires the optional dependency::
53
+
54
+ pip install thirdeyelabs[hf]
55
+
56
+ Args:
57
+ split: Dataset split to load.
58
+ **kwargs: Forwarded to ``datasets.load_dataset``.
59
+ """
60
+ try:
61
+ from datasets import load_dataset as _hf_load_dataset
62
+ except ImportError as exc: # pragma: no cover
63
+ raise ImportError(
64
+ "The 'datasets' package is required. "
65
+ "Install it with: pip install thirdeyelabs[hf]"
66
+ ) from exc
67
+
68
+ return _hf_load_dataset(DATASET_ID, split=split, **kwargs)