lightly-studio 0.3.3__py3-none-any.whl → 0.3.4__py3-none-any.whl
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.
Potentially problematic release.
This version of lightly-studio might be problematic. Click here for more details.
- lightly_studio/api/app.py +2 -0
- lightly_studio/api/routes/api/caption.py +30 -0
- lightly_studio/api/routes/api/embeddings2d.py +36 -4
- lightly_studio/api/routes/api/metadata.py +57 -1
- lightly_studio/core/add_samples.py +138 -0
- lightly_studio/core/dataset.py +143 -16
- lightly_studio/dataset/loader.py +2 -8
- lightly_studio/db_manager.py +10 -4
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/0.B3oFNb6O.css +1 -0
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/2.CkOblLn7.css +1 -0
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/Samples.CIbricz7.css +1 -0
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/_layout.7Ma7YdVg.css +1 -0
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/{useFeatureFlags.CV-KWLNP.css → _layout.CefECEWA.css} +1 -1
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/transform.2jKMtOWG.css +1 -0
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/-DXuGN29.js +1 -0
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/{Cs1XmhiF.js → B7302SU7.js} +1 -1
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/BeWf8-vJ.js +1 -0
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/Bqz7dyEC.js +1 -0
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/C1FmrZbK.js +1 -0
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/{BdfTHw61.js → CSCQddQS.js} +1 -1
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/CZGpyrcA.js +1 -0
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/CfQ4mGwl.js +1 -0
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/CiaNZCBa.js +1 -0
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/Cqo0Vpvt.js +417 -0
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/Cy4fgWTG.js +1 -0
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/D5w4xp5l.js +1 -0
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/DD63uD-T.js +1 -0
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/DQ8aZ1o-.js +3 -0
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/{keKYsoph.js → DSxvnAMh.js} +1 -1
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/D_JuJOO3.js +20 -0
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/D_ynJAfY.js +2 -0
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/Dafy4oEQ.js +1 -0
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/{BfHVnyNT.js → Dj4O-5se.js} +1 -1
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/DmjAI-UV.js +1 -0
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/Dug7Bq1S.js +1 -0
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/Dv5BSBQG.js +1 -0
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/DzBTnFhV.js +1 -0
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/DzX_yyqb.js +1 -0
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/Frwd2CjB.js +1 -0
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/H4l0JFh9.js +1 -0
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/H60ATh8g.js +2 -0
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/{6t3IJ0vQ.js → qIv1kPyv.js} +1 -1
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/sLqs1uaK.js +20 -0
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/u-it74zV.js +96 -0
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/entry/app.BPc0HQPq.js +2 -0
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/entry/start.SNvc2nrm.js +1 -0
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/0.5jT7P06o.js +1 -0
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/1.Cdy-7S5q.js +1 -0
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/10.C_uoESTX.js +1 -0
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/12.DcO8wIAc.js +1 -0
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/{2.C8HLK8mj.js → 2.BIldfkxL.js} +268 -113
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/{3.CLvg3QcJ.js → 3.BC9z_TWM.js} +1 -1
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/{4.BQhDtXUI.js → 4.D8X_Ch5n.js} +1 -1
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/5.CAXhxJu6.js +39 -0
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/{6.uBV1Lhat.js → 6.DRA5Ru_2.js} +1 -1
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/7.WVBsruHQ.js +1 -0
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/8.BuKUrCEN.js +20 -0
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/9.CUIn1yCR.js +1 -0
- lightly_studio/dist_lightly_studio_view_app/_app/version.json +1 -1
- lightly_studio/dist_lightly_studio_view_app/index.html +15 -14
- lightly_studio/examples/example.py +4 -0
- lightly_studio/examples/example_coco.py +4 -0
- lightly_studio/examples/example_coco_caption.py +24 -0
- lightly_studio/examples/example_metadata.py +4 -1
- lightly_studio/examples/example_selection.py +4 -0
- lightly_studio/examples/example_split_work.py +4 -0
- lightly_studio/examples/example_yolo.py +4 -0
- lightly_studio/export/export_dataset.py +11 -3
- lightly_studio/metadata/compute_typicality.py +1 -1
- lightly_studio/models/caption.py +73 -0
- lightly_studio/models/dataset.py +1 -2
- lightly_studio/models/metadata.py +1 -1
- lightly_studio/models/sample.py +2 -2
- lightly_studio/resolvers/caption_resolver.py +80 -0
- lightly_studio/resolvers/dataset_resolver.py +4 -7
- lightly_studio/resolvers/metadata_resolver/__init__.py +2 -2
- lightly_studio/resolvers/metadata_resolver/sample/__init__.py +3 -3
- lightly_studio/resolvers/metadata_resolver/sample/bulk_update_metadata.py +46 -0
- lightly_studio/resolvers/samples_filter.py +18 -10
- lightly_studio/type_definitions.py +2 -0
- {lightly_studio-0.3.3.dist-info → lightly_studio-0.3.4.dist-info}/METADATA +86 -21
- {lightly_studio-0.3.3.dist-info → lightly_studio-0.3.4.dist-info}/RECORD +83 -77
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/0.CA_CXIBb.css +0 -1
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/_layout.DS78jgNY.css +0 -1
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/index.BVs_sZj9.css +0 -1
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/transform.D487hwJk.css +0 -1
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/8NsknIT2.js +0 -1
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/BND_-4Kp.js +0 -1
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/BjkP1AHA.js +0 -1
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/BuuNVL9G.js +0 -1
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/BzKGpnl4.js +0 -1
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/CCx7Ho51.js +0 -1
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/CH6P3X75.js +0 -1
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/CR2upx_Q.js +0 -4
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/CWPZrTTJ.js +0 -1
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/CwPowJfP.js +0 -1
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/CxFKfZ9T.js +0 -1
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/Cxevwdid.js +0 -1
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/D4whDBUi.js +0 -1
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/D6r9vr07.js +0 -1
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/DA6bFLPR.js +0 -1
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/DEgUu98i.js +0 -3
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/DGTPl6Gk.js +0 -1
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/DKGxBSlK.js +0 -1
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/DQXoLcsF.js +0 -1
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/DQe_kdRt.js +0 -92
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/DcY4jgG3.js +0 -1
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/H7C68rOM.js +0 -1
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/RmD8FzRo.js +0 -1
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/V-MnMC1X.js +0 -1
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/entry/app.BVr6DYqP.js +0 -2
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/entry/start.u7zsVvqp.js +0 -1
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/0.Da2agmdd.js +0 -1
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/1.B11tVRJV.js +0 -1
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/10.l30Zud4h.js +0 -1
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/12.CgKPGcAP.js +0 -1
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/5.-6XqWX5G.js +0 -1
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/7.BXsgoQZh.js +0 -1
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/8.BkbcnUs8.js +0 -1
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/9.Bkrv-Vww.js +0 -1
- lightly_studio/resolvers/metadata_resolver/sample/bulk_set_metadata.py +0 -48
- {lightly_studio-0.3.3.dist-info → lightly_studio-0.3.4.dist-info}/WHEEL +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"""Resolvers for metadata operations."""
|
|
2
2
|
|
|
3
|
-
from .
|
|
4
|
-
|
|
3
|
+
from .bulk_update_metadata import (
|
|
4
|
+
bulk_update_metadata,
|
|
5
5
|
)
|
|
6
6
|
from .get_by_sample_id import (
|
|
7
7
|
get_by_sample_id,
|
|
@@ -14,7 +14,7 @@ from .set_value_for_sample import (
|
|
|
14
14
|
)
|
|
15
15
|
|
|
16
16
|
__all__ = [
|
|
17
|
-
"
|
|
17
|
+
"bulk_update_metadata",
|
|
18
18
|
"get_by_sample_id",
|
|
19
19
|
"get_value_for_sample",
|
|
20
20
|
"set_value_for_sample",
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"""Resolver for operations for setting metadata."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
|
|
5
|
+
from typing import Any
|
|
6
|
+
from uuid import UUID
|
|
7
|
+
|
|
8
|
+
from sqlmodel import Session, col, select
|
|
9
|
+
|
|
10
|
+
from lightly_studio.models.metadata import SampleMetadataTable
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
def bulk_update_metadata(
|
|
14
|
+
session: Session,
|
|
15
|
+
sample_metadata: list[tuple[UUID, dict[str, Any]]],
|
|
16
|
+
) -> None:
|
|
17
|
+
"""Bulk insert or update metadata for multiple samples.
|
|
18
|
+
|
|
19
|
+
If a sample does not have metadata, a new metadata row is created.
|
|
20
|
+
If a sample already has metadata, the new key-value pairs are merged with the existing metadata.
|
|
21
|
+
|
|
22
|
+
Args:
|
|
23
|
+
session: The database session.
|
|
24
|
+
sample_metadata: List of (sample_id, metadata_dict) tuples.
|
|
25
|
+
"""
|
|
26
|
+
# TODO(Mihnea, 10/2025): Consider using SQLAlchemy's bulk operations
|
|
27
|
+
# (Session.bulk_insert/update_mappings) if performance becomes a bottleneck.
|
|
28
|
+
if not sample_metadata:
|
|
29
|
+
return
|
|
30
|
+
|
|
31
|
+
# Get all existing metadata rows for the given sample IDs.
|
|
32
|
+
sample_ids = [s[0] for s in sample_metadata]
|
|
33
|
+
existing_metadata = session.exec(
|
|
34
|
+
select(SampleMetadataTable).where(col(SampleMetadataTable.sample_id).in_(sample_ids))
|
|
35
|
+
).all()
|
|
36
|
+
sample_id_to_existing_metadata = {meta.sample_id: meta for meta in existing_metadata}
|
|
37
|
+
|
|
38
|
+
for sample_id, new_metadata in sample_metadata:
|
|
39
|
+
metadata = sample_id_to_existing_metadata.get(
|
|
40
|
+
sample_id, SampleMetadataTable(sample_id=sample_id)
|
|
41
|
+
)
|
|
42
|
+
for key, value in new_metadata.items():
|
|
43
|
+
metadata.set_value(key, value)
|
|
44
|
+
session.add(metadata)
|
|
45
|
+
|
|
46
|
+
session.commit()
|
|
@@ -33,20 +33,15 @@ class SampleFilter(BaseModel):
|
|
|
33
33
|
annotation_label_ids: Optional[List[UUID]] = None
|
|
34
34
|
tag_ids: Optional[List[UUID]] = None
|
|
35
35
|
metadata_filters: Optional[List[MetadataFilter]] = None
|
|
36
|
+
sample_ids: Optional[List[UUID]] = None
|
|
36
37
|
|
|
37
38
|
def apply(self, query: QueryType) -> QueryType:
|
|
38
39
|
"""Apply the filters to the given query."""
|
|
40
|
+
if self.sample_ids:
|
|
41
|
+
query = query.where(col(SampleTable.sample_id).in_(self.sample_ids))
|
|
42
|
+
|
|
39
43
|
# Apply dimension-based filters to the query.
|
|
40
|
-
|
|
41
|
-
if self.width.min is not None:
|
|
42
|
-
query = query.where(SampleTable.width >= self.width.min)
|
|
43
|
-
if self.width.max is not None:
|
|
44
|
-
query = query.where(SampleTable.width <= self.width.max)
|
|
45
|
-
if self.height:
|
|
46
|
-
if self.height.min is not None:
|
|
47
|
-
query = query.where(SampleTable.height >= self.height.min)
|
|
48
|
-
if self.height.max is not None:
|
|
49
|
-
query = query.where(SampleTable.height <= self.height.max)
|
|
44
|
+
query = self._apply_dimension_filters(query)
|
|
50
45
|
|
|
51
46
|
# Apply annotation label filters to the query.
|
|
52
47
|
if self.annotation_label_ids:
|
|
@@ -79,3 +74,16 @@ class SampleFilter(BaseModel):
|
|
|
79
74
|
metadata_join_condition=SampleMetadataTable.sample_id == SampleTable.sample_id,
|
|
80
75
|
)
|
|
81
76
|
return query
|
|
77
|
+
|
|
78
|
+
def _apply_dimension_filters(self, query: QueryType) -> QueryType:
|
|
79
|
+
if self.width:
|
|
80
|
+
if self.width.min is not None:
|
|
81
|
+
query = query.where(SampleTable.width >= self.width.min)
|
|
82
|
+
if self.width.max is not None:
|
|
83
|
+
query = query.where(SampleTable.width <= self.width.max)
|
|
84
|
+
if self.height:
|
|
85
|
+
if self.height.min is not None:
|
|
86
|
+
query = query.where(SampleTable.height >= self.height.min)
|
|
87
|
+
if self.height.max is not None:
|
|
88
|
+
query = query.where(SampleTable.height <= self.height.max)
|
|
89
|
+
return query
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
from pathlib import Path
|
|
4
4
|
from typing import TypeVar, Union
|
|
5
|
+
from uuid import UUID
|
|
5
6
|
|
|
6
7
|
from sqlmodel.sql.expression import SelectOfScalar
|
|
7
8
|
|
|
@@ -14,6 +15,7 @@ QueryType = TypeVar(
|
|
|
14
15
|
SelectOfScalar[AnnotationBaseTable],
|
|
15
16
|
SelectOfScalar[SampleTable],
|
|
16
17
|
SelectOfScalar[int],
|
|
18
|
+
SelectOfScalar[UUID],
|
|
17
19
|
)
|
|
18
20
|
|
|
19
21
|
PathLike = Union[str, Path]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: lightly-studio
|
|
3
|
-
Version: 0.3.
|
|
3
|
+
Version: 0.3.4
|
|
4
4
|
Summary: LightlyStudio is a lightweight, fast, and easy-to-use data exploration tool for data scientists and engineers.
|
|
5
5
|
Classifier: Operating System :: MacOS :: MacOS X
|
|
6
6
|
Classifier: Operating System :: Microsoft :: Windows
|
|
@@ -10,7 +10,8 @@ Classifier: Programming Language :: Python :: 3.8
|
|
|
10
10
|
Classifier: Programming Language :: Python :: 3.9
|
|
11
11
|
Classifier: Programming Language :: Python :: 3.10
|
|
12
12
|
Classifier: Programming Language :: Python :: 3.11
|
|
13
|
-
|
|
13
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
14
|
+
Requires-Python: <3.13,>=3.8
|
|
14
15
|
Requires-Dist: annotated-types==0.7.0
|
|
15
16
|
Requires-Dist: duckdb-engine<0.17,>=0.15.0
|
|
16
17
|
Requires-Dist: duckdb<1.3,>=1.2.2
|
|
@@ -60,7 +61,7 @@ Description-Content-Type: text/markdown
|
|
|
60
61
|
|
|
61
62
|
We at **[Lightly](https://lightly.ai)** created **LightlyStudio**, an open-source tool
|
|
62
63
|
designed to supercharge your data curation workflows for computer vision datasets. Explore
|
|
63
|
-
your data, visualize annotations and crops, tag samples, and export curated lists to improve
|
|
64
|
+
your data, visualize captions, annotations and crops, tag samples, and export curated lists to improve
|
|
64
65
|
your machine learning pipelines. And much more!
|
|
65
66
|
|
|
66
67
|
LightlyStudio runs entirely locally on your machine, keeping your data private. It consists
|
|
@@ -72,7 +73,7 @@ Using LightlyStudio typically involves these steps:
|
|
|
72
73
|
|
|
73
74
|
1. **Index Your Dataset:** Run a Python script using the `lightly_studio` library to process your local dataset (images and annotations) and save metadata into a local `lightly_studio.db` file.
|
|
74
75
|
2. **Launch the UI:** The script then starts a local web server.
|
|
75
|
-
3. **Explore & Curate:** Use the UI to visualize images, annotations, and object crops. Filter and search your data (experimental text search available). Apply tags to interesting samples (e.g., "mislabeled", "review").
|
|
76
|
+
3. **Explore & Curate:** Use the UI to visualize images, annotations, captions, and object crops. Filter and search your data (experimental text search available). Apply tags to interesting samples (e.g., "mislabeled", "review").
|
|
76
77
|
4. **Export Curated Data:** Export information (like filenames) for your tagged samples from the UI to use downstream.
|
|
77
78
|
5. **Stop the Server:** Close the terminal running the script (Ctrl+C) when done.
|
|
78
79
|
|
|
@@ -111,7 +112,7 @@ The library is OS-independent and works on Windows, Linux, and macOS.
|
|
|
111
112
|
|
|
112
113
|
```shell
|
|
113
114
|
# 1. Create and activate a virtual environment (Recommended)
|
|
114
|
-
# On Linux/
|
|
115
|
+
# On Linux/MacOS:
|
|
115
116
|
python3 -m venv venv
|
|
116
117
|
source venv/bin/activate
|
|
117
118
|
|
|
@@ -139,14 +140,12 @@ following contents in the same directory that contains the `dataset_examples/` f
|
|
|
139
140
|
```python
|
|
140
141
|
# example_yolo.py
|
|
141
142
|
|
|
142
|
-
from pathlib import Path
|
|
143
143
|
import lightly_studio as ls
|
|
144
144
|
|
|
145
145
|
# Create a dataset and add the samples from the yolo format
|
|
146
146
|
dataset = ls.Dataset.create()
|
|
147
147
|
dataset.add_samples_from_yolo(
|
|
148
148
|
data_yaml="dataset_examples/road_signs_yolo/data.yaml",
|
|
149
|
-
input_split="test",
|
|
150
149
|
)
|
|
151
150
|
|
|
152
151
|
# Start the UI application on the port 8001.
|
|
@@ -202,7 +201,6 @@ the `dataset_examples/` folder:
|
|
|
202
201
|
```python
|
|
203
202
|
# example_coco.py
|
|
204
203
|
|
|
205
|
-
from pathlib import Path
|
|
206
204
|
import lightly_studio as ls
|
|
207
205
|
|
|
208
206
|
# Create a dataset and add the samples from the coco format
|
|
@@ -245,6 +243,56 @@ COCO uses a single JSON file containing all annotations. The format consists of
|
|
|
245
243
|
|
|
246
244
|
</details>
|
|
247
245
|
|
|
246
|
+
### COCO Captions
|
|
247
|
+
|
|
248
|
+
To run a caption example using a COCO dataset, create a file named
|
|
249
|
+
`example_coco_captions.py` with the following contents in the same directory that contains
|
|
250
|
+
the `dataset_examples/` folder:
|
|
251
|
+
|
|
252
|
+
```python
|
|
253
|
+
# example_coco_captions.py
|
|
254
|
+
|
|
255
|
+
import lightly_studio as ls
|
|
256
|
+
|
|
257
|
+
# Create a dataset and add the samples from the coco format
|
|
258
|
+
dataset = ls.Dataset.create()
|
|
259
|
+
dataset.add_samples_from_coco_caption(
|
|
260
|
+
annotations_json="dataset_examples/coco_subset_128_images/captions_train2017.json",
|
|
261
|
+
images_path="dataset_examples/coco_subset_128_images/images",
|
|
262
|
+
)
|
|
263
|
+
|
|
264
|
+
# Start the UI application on the port 8001.
|
|
265
|
+
ls.start_gui()
|
|
266
|
+
```
|
|
267
|
+
|
|
268
|
+
Run the script:
|
|
269
|
+
|
|
270
|
+
```
|
|
271
|
+
python example_coco_captions.py
|
|
272
|
+
```
|
|
273
|
+
|
|
274
|
+
Now you can inspect samples with their assigned captions in the app. When you are done,
|
|
275
|
+
stop the app by pressing Ctrl+C in the terminal.
|
|
276
|
+
|
|
277
|
+
<details>
|
|
278
|
+
<summary>The COCO format details:</summary>
|
|
279
|
+
|
|
280
|
+
```
|
|
281
|
+
coco_subset_128_images/
|
|
282
|
+
├── images/
|
|
283
|
+
│ ├── image1.jpg
|
|
284
|
+
│ ├── image2.jpg
|
|
285
|
+
│ └── ...
|
|
286
|
+
└── captions_train2017.json # Single JSON file containing all captions
|
|
287
|
+
```
|
|
288
|
+
|
|
289
|
+
COCO uses a single JSON file containing all captions. The format consists of three main components:
|
|
290
|
+
|
|
291
|
+
- Images: Defines metadata for each image in the dataset.
|
|
292
|
+
- Annotations: Defines the captions.
|
|
293
|
+
|
|
294
|
+
</details>
|
|
295
|
+
|
|
248
296
|
## 🔍 How It Works
|
|
249
297
|
|
|
250
298
|
1. Your **Python script** uses the `lightly_studio` **Dataset**.
|
|
@@ -330,7 +378,6 @@ import lightly_studio as ls
|
|
|
330
378
|
dataset = ls.Dataset.create()
|
|
331
379
|
dataset.add_samples_from_yolo(
|
|
332
380
|
data_yaml="my_yolo_dataset/data.yaml",
|
|
333
|
-
input_split="val",
|
|
334
381
|
)
|
|
335
382
|
|
|
336
383
|
ls.start_gui()
|
|
@@ -628,12 +675,12 @@ query.add_tag("tag_name")
|
|
|
628
675
|
|
|
629
676
|
#### Export Samples
|
|
630
677
|
|
|
631
|
-
Currently, exporting to the COCO object detection format is supported
|
|
678
|
+
Currently, exporting to the COCO object detection format is supported and only annotations
|
|
679
|
+
of type object detection are exported. The following example exports the samples in the query
|
|
680
|
+
to a COCO JSON file named `coco_export.json`:
|
|
632
681
|
|
|
633
682
|
```py
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
query.export().to_coco_object_detections(Path("coco_export.json"))
|
|
683
|
+
query.export().to_coco_object_detections()
|
|
637
684
|
```
|
|
638
685
|
|
|
639
686
|
### Examples
|
|
@@ -697,7 +744,11 @@ samples.
|
|
|
697
744
|
Set the `LIGHTLY_STUDIO_LICENSE_KEY` environment variable before using selection features:
|
|
698
745
|
|
|
699
746
|
```bash
|
|
747
|
+
# On Linux/MacOS
|
|
700
748
|
export LIGHTLY_STUDIO_LICENSE_KEY="license_key_here"
|
|
749
|
+
|
|
750
|
+
# On Windows (PowerShell)
|
|
751
|
+
$env:LIGHTLY_STUDIO_LICENSE_KEY="license_key_here"
|
|
701
752
|
```
|
|
702
753
|
|
|
703
754
|
Alternatively, set it inside your Python script:
|
|
@@ -707,6 +758,12 @@ import os
|
|
|
707
758
|
os.environ["LIGHTLY_STUDIO_LICENSE_KEY"] = "license_key_here"
|
|
708
759
|
```
|
|
709
760
|
|
|
761
|
+
Or in a `.env` file:
|
|
762
|
+
|
|
763
|
+
```
|
|
764
|
+
LIGHTLY_STUDIO_LICENSE_KEY="license_key_here"
|
|
765
|
+
```
|
|
766
|
+
|
|
710
767
|
#### Diversity Selection
|
|
711
768
|
|
|
712
769
|
Diversity selection can be configured directly from a `DatasetQuery`. The example below showcases a simple case of selecting diverse samples.
|
|
@@ -796,19 +853,27 @@ with open("export.txt", "w") as f:
|
|
|
796
853
|
|
|
797
854
|
## 📚 **FAQ**
|
|
798
855
|
|
|
799
|
-
###
|
|
856
|
+
### Does LightlyStudio persist the datasets?
|
|
800
857
|
|
|
801
|
-
Yes, the information about datasets is
|
|
802
|
-
|
|
858
|
+
Yes, the information about datasets is persisted in a database file. You can see inspect
|
|
859
|
+
it after the dataset is processed. Use `Dataset.load()` to load a dataset from a pre-existing
|
|
860
|
+
database.
|
|
803
861
|
|
|
804
862
|
### Can I change the database path?
|
|
805
863
|
|
|
806
|
-
|
|
864
|
+
Yes, the database can be selected as follows:
|
|
865
|
+
```py
|
|
866
|
+
import lightly_studio as ls
|
|
867
|
+
|
|
868
|
+
ls.db_manager.connect(db_file="custom.db")
|
|
869
|
+
```
|
|
807
870
|
|
|
808
|
-
### Can I
|
|
871
|
+
### Can I use LightlyStudio from two scripts in parallel?
|
|
809
872
|
|
|
810
|
-
|
|
873
|
+
Only one script can be run at one time as the app uses a database lock for data integrity.
|
|
811
874
|
|
|
812
|
-
### Can I change the API backend port?
|
|
875
|
+
### Can I change the API backend host and port?
|
|
813
876
|
|
|
814
|
-
Yes
|
|
877
|
+
Yes, by setting environment variables. For the host set the LIGHTLY_STUDIO_HOST variable,
|
|
878
|
+
to change the port set the LIGHTLY_STUDIO_PORT variable. Note that if the port is unavailable
|
|
879
|
+
at runtime the app uses a random port number.
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
lightly_studio/__init__.py,sha256=l04o5TZrSbEMkradiGnAG8KHsm8cBX1kwlsjgiSumQg,574
|
|
2
|
-
lightly_studio/db_manager.py,sha256=
|
|
2
|
+
lightly_studio/db_manager.py,sha256=lXazCGa1M3RaxvLmNJCLwh2kl1aOYblSei6Tu6Wh0pM,5182
|
|
3
3
|
lightly_studio/export_schema.py,sha256=tjJnekCJFacaK6Hraabfbat0hUknwRW7DqO1lddXcA0,484
|
|
4
4
|
lightly_studio/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
5
5
|
lightly_studio/setup_logging.py,sha256=o4xDUKJ-YkATLvKOqgwSzHaOjGXzN_-1HkiG5hbHXB8,672
|
|
6
|
-
lightly_studio/type_definitions.py,sha256=
|
|
6
|
+
lightly_studio/type_definitions.py,sha256=qFtIVz-4qdZ6b8m785iC2CGtgtSmhMFtVs8mFK23aFQ,610
|
|
7
7
|
lightly_studio/api/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
8
|
-
lightly_studio/api/app.py,sha256=
|
|
8
|
+
lightly_studio/api/app.py,sha256=f4dY_UU-Moeh8udE2gkeKtoZivtvcE4RRa-8xFOkS2k,3070
|
|
9
9
|
lightly_studio/api/cache.py,sha256=eJF4VYBFhx_p5rItfIIe18SDqUJVkKIDROXv61Tv1Zo,2478
|
|
10
10
|
lightly_studio/api/db_tables.py,sha256=mL92m47wgxdXAGvfXt4oAOy9R_Q3Vxe_7rPU_NmoMEo,1206
|
|
11
11
|
lightly_studio/api/features.py,sha256=4iwYUj8KMvpC3nvA2bbJQnABacgFC9MfD0jX9hHeYm0,242
|
|
@@ -15,14 +15,15 @@ lightly_studio/api/routes/images.py,sha256=J8HSgdmVSMzW9cKmx2Qx2fciFluAU9c6W7nQw
|
|
|
15
15
|
lightly_studio/api/routes/webapp.py,sha256=7l0-OlShofB0FMZu7X0Kgafp76_S38Exy-hOLsJXdZs,1691
|
|
16
16
|
lightly_studio/api/routes/api/annotation.py,sha256=XT_fOraJoO6bmRAsI_H-5CBwMlyGvjGRSXLaTFq4Q1w,8611
|
|
17
17
|
lightly_studio/api/routes/api/annotation_label.py,sha256=YZHcgGwzDUo8TTVfWw_hIxRW9Now7sL8gv7-iKaNsCA,2678
|
|
18
|
+
lightly_studio/api/routes/api/caption.py,sha256=a2Z0Y_UeY1wJTuP6ryVoZo-_73SADJs4LXKQcBMpbGE,1067
|
|
18
19
|
lightly_studio/api/routes/api/classifier.py,sha256=ZBT8LVolL27SAjZjx2YCEGTGervDQeKWWQh4Fa3DKsI,10877
|
|
19
20
|
lightly_studio/api/routes/api/dataset.py,sha256=BIPd5OIhfODj6YIVJ1jhhTGKclJVvcdWlfczSZi0pJE,5357
|
|
20
21
|
lightly_studio/api/routes/api/dataset_tag.py,sha256=5SwrguT5Ds4AkIlCLFPpbLYvkS_vVeB9j7VNDfh251c,7607
|
|
21
|
-
lightly_studio/api/routes/api/embeddings2d.py,sha256=
|
|
22
|
+
lightly_studio/api/routes/api/embeddings2d.py,sha256=baPhzVs34gnAEq3PX4gTtCoiDO5Wb4o0nFwxts80s7E,5423
|
|
22
23
|
lightly_studio/api/routes/api/exceptions.py,sha256=89QD_JVXSCtHUSyTAK_5ganPu7J943KHTXcIkqSU9UY,3331
|
|
23
24
|
lightly_studio/api/routes/api/export.py,sha256=TIF8_JJCTHkob0Ugx_pkJoGqaHIMgA_SgcZ65N9Axx0,2411
|
|
24
25
|
lightly_studio/api/routes/api/features.py,sha256=X3o_iCSLK6f32ctwVQQAKQolUYRA_9SyM7QPKNtPoD8,477
|
|
25
|
-
lightly_studio/api/routes/api/metadata.py,sha256=
|
|
26
|
+
lightly_studio/api/routes/api/metadata.py,sha256=KKPMqDmFmLo0FSAaTNeyzJ2eQGbtsfIRCHCfp2rpIAs,2888
|
|
26
27
|
lightly_studio/api/routes/api/sample.py,sha256=k3-Wm2VBva3PxOIc3ZTbn64m3nMgPrJU-Zun56NNVjw,6523
|
|
27
28
|
lightly_studio/api/routes/api/selection.py,sha256=_T5ZzZmPPlqIzBCsmLcJEafEWtkLatYspdgLtpTJTX0,3031
|
|
28
29
|
lightly_studio/api/routes/api/settings.py,sha256=x-Mr_m02diehh4MBq_F6M5DEFXD6MvgRD-06Bef985g,954
|
|
@@ -32,8 +33,8 @@ lightly_studio/api/routes/api/validators.py,sha256=2I70qb9bXnnhVk-hMYXbGBJDGSws0
|
|
|
32
33
|
lightly_studio/api/routes/api/annotations/__init__.py,sha256=O06o1vsFZAHMO9DnrtAsCcFARAEh2dj3IR6aaeMN4bM,112
|
|
33
34
|
lightly_studio/api/routes/api/annotations/create_annotation.py,sha256=njncfS7ui95w3Vg3HF1FpmyDUPlsnG-Vm1ZGYPaRgoM,1510
|
|
34
35
|
lightly_studio/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
35
|
-
lightly_studio/core/add_samples.py,sha256=
|
|
36
|
-
lightly_studio/core/dataset.py,sha256=
|
|
36
|
+
lightly_studio/core/add_samples.py,sha256=5R5MNcBuP7ioMZC5TTqNdoSHWB0s6epqv_pyLuXABRk,18961
|
|
37
|
+
lightly_studio/core/dataset.py,sha256=MT-Y71m39WZ_5m4eYviEzFaNqzDtKkeDl0MyhVkGD4A,18755
|
|
37
38
|
lightly_studio/core/sample.py,sha256=I0ev9Ak1TXrzzWwUBOPokvv4zbzq_1dkR_ZsnURXob0,6503
|
|
38
39
|
lightly_studio/core/start_gui.py,sha256=ZwO76xMTfHp8ztYzBuRHnNcRAWZoN5KMDQkJ4NayR8w,1605
|
|
39
40
|
lightly_studio/core/dataset_query/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -52,15 +53,16 @@ lightly_studio/dataset/embedding_manager.py,sha256=QBN6ev_PhaP0wFqTfjOkYbV6zqxkw
|
|
|
52
53
|
lightly_studio/dataset/env.py,sha256=YghE9ehKG03gol_QcUuj2J6d9A8V4fASxXVZQ93Rv-o,814
|
|
53
54
|
lightly_studio/dataset/file_utils.py,sha256=_hd9NSs21Ib1-MuBOKNz1Cu6psUdFIXWHRscNQ-Ch8g,1245
|
|
54
55
|
lightly_studio/dataset/fsspec_lister.py,sha256=WezfO5KiiFoiCSBh3aocrPSbDZBauOxWuh0qaEkOb5g,8779
|
|
55
|
-
lightly_studio/dataset/loader.py,sha256=
|
|
56
|
+
lightly_studio/dataset/loader.py,sha256=koI1-DwCvgueyhL_2TFBC0M9NFAsxKaLtsV_7pgrkbc,20227
|
|
56
57
|
lightly_studio/dataset/mobileclip_embedding_generator.py,sha256=9WUfxroBNguOSESJgj3vzlF3oHFRr-II-xdr__jpo6I,5030
|
|
57
58
|
lightly_studio/dist_lightly_studio_view_app/apple-touch-icon-precomposed.png,sha256=UUbtebSGy54c3N14FM0irnjnDOsw-ga0zZoWzxIbyeY,1571
|
|
58
59
|
lightly_studio/dist_lightly_studio_view_app/apple-touch-icon.png,sha256=UUbtebSGy54c3N14FM0irnjnDOsw-ga0zZoWzxIbyeY,1571
|
|
59
60
|
lightly_studio/dist_lightly_studio_view_app/favicon.png,sha256=UUbtebSGy54c3N14FM0irnjnDOsw-ga0zZoWzxIbyeY,1571
|
|
60
|
-
lightly_studio/dist_lightly_studio_view_app/index.html,sha256=
|
|
61
|
+
lightly_studio/dist_lightly_studio_view_app/index.html,sha256=5VRSh0SSFeh8hVQuzqILlmsqsPS5JRZ_nT_tLuZb3Ls,1912
|
|
61
62
|
lightly_studio/dist_lightly_studio_view_app/_app/env.js,sha256=hLh9EQqXP13H3XQjod8C7qhob7-CvlByIRZBZ0M37fw,85
|
|
62
|
-
lightly_studio/dist_lightly_studio_view_app/_app/version.json,sha256=-
|
|
63
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/0.
|
|
63
|
+
lightly_studio/dist_lightly_studio_view_app/_app/version.json,sha256=-Nq08INEQIGOy998WDwc4PRQUrVQdMzMrrlOea9YRoQ,27
|
|
64
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/0.B3oFNb6O.css,sha256=2cOkSWcAQRqIqSOkF3CeRkxdew5CyU-GVjGeq_GcsdI,53051
|
|
65
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/2.CkOblLn7.css,sha256=QamuVSgnZ34DwGDxV7dbBGGflITlyMyJD3tjTMeedvE,96
|
|
64
66
|
lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/LightlyLogo.BNjCIww-.png,sha256=Hu4gPw9s4pxEOk85ro5VjB4GKLoiMrQCT2LB4cFtpg8,17123
|
|
65
67
|
lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/OpenSans-Bold.DGvYQtcs.ttf,sha256=vHPEXlgQoJcevq7062w13shGB9vgLaZ1f59D2Vi22l8,130860
|
|
66
68
|
lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/OpenSans-Italic-VariableFont_wdth_wght.B4AZ-wl6.ttf,sha256=QSoWv9h46CRX_fdlqFM3O2d3-PF3R1srnb4zUezcLm0,580280
|
|
@@ -68,84 +70,87 @@ lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/OpenSans-Mediu
|
|
|
68
70
|
lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/OpenSans-Regular.DxJTClRG.ttf,sha256=ZTBIAnfaYu_eBH6ybnin5TLRz67skWA-aNY4drlmnw0,130832
|
|
69
71
|
lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/OpenSans-SemiBold.D3TTYgdB.ttf,sha256=5gMTXMOxIAxyYLNPN_nLHyF4pCs2MDfiah4YJ2q3i_A,130760
|
|
70
72
|
lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/OpenSans-VariableFont_wdth_wght.BZBpG5Iz.ttf,sha256=E3RLvAefD0kuT7OxShXSQrjZYA-qzUI9WM35N_6nzms,529700
|
|
71
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/
|
|
72
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/
|
|
73
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/
|
|
74
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/
|
|
73
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/Samples.CIbricz7.css,sha256=cC8Kk73iF69o4ffgbez7Vyiv4t5v-CzRlsVsXSkMS1Q,819
|
|
74
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/_layout.7Ma7YdVg.css,sha256=rgWwyf_JO3hv9PGD4wNVrIexdE20yKy3LUUq6MNLWZw,53111
|
|
75
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/_layout.CefECEWA.css,sha256=Iae7LyxeYJ_GTH3bExOeQsso2C0M0FEM1cpWjpon4Ek,384
|
|
76
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/transform.2jKMtOWG.css,sha256=7p_E1zLsA60z2S0U72W2Lxd_AxJ6IY5wXHURXaWPggM,1107
|
|
77
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/-DXuGN29.js,sha256=Lnrpd3bSsXNbHouKNbE4kElxMcfObz8TUCUWaJxSau8,1417
|
|
75
78
|
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/69_IOA4Y.js,sha256=ZeRHEle237-CUEan-VArVExxfKi9XafXM591ylj_ecs,34
|
|
76
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/
|
|
77
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/8NsknIT2.js,sha256=NmVf0S6Mbt-v5j0FPnUaN9l7GH8ZrPmx0e23tXycvR4,976
|
|
79
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/B7302SU7.js,sha256=EJ2kY3gKAMRYJM7kO1qjw9wyxSN98vYIT1WGI5JNfrk,227
|
|
78
80
|
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/B90CZVMX.js,sha256=NSrXzdg71WFiRRhYQIfnoZLpblfPyXvuXXCWIJ1-FQ4,110
|
|
79
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/
|
|
80
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/
|
|
81
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/
|
|
82
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/
|
|
83
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/BuuNVL9G.js,sha256=WCg_Gbn-6H3t7L61qpARQY5S-v01QVXQczjDAGyZogA,464
|
|
84
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/BzKGpnl4.js,sha256=BL171ABDCFCXjBZQAgRYAkLmvMyCYGAh3W0nfMB0LcI,517
|
|
85
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/CCx7Ho51.js,sha256=qXPYI9ypUBvPh9yW2lA5dyuIG40oa1WssS9l8xB3LxQ,7148
|
|
86
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/CH6P3X75.js,sha256=etm79hGbhL9S2-S28Xmlz5kkSQ4K5s5qIl9vxo87yH8,15074
|
|
87
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/CR2upx_Q.js,sha256=KFtlxbEch8yU1ZvSSDtEzYkWglXPfGkwiwvSwhMlgyk,3142
|
|
88
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/CWPZrTTJ.js,sha256=a79iCBDN-9sue0QuMHqLscWpgElxB7qqMcWAIyrXO-M,25151
|
|
81
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/BeWf8-vJ.js,sha256=SIyNmWPLr1XysrwLt8iIJcvtqcYIBtmKVOJRdbtX6Xs,9917
|
|
82
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/Bqz7dyEC.js,sha256=1Dc0otTiA5pHl9soZAQ_HBkFTcqMvBvbZLRw9GwqteI,971
|
|
83
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/C1FmrZbK.js,sha256=3avQjvGJbdB6LCqNAamWPRgdza8dPLkXsyGWXDk33ek,1141
|
|
84
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/CSCQddQS.js,sha256=WUDGcKtBFcjRPmH40GQsl2xRJlcQHWZQhTsJKsvw2Mk,1515
|
|
89
85
|
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/CWj6FrbW.js,sha256=U8gujwcJTusJSlmztmyz71B67fviyXJdA4sx4tz-wvY,106
|
|
90
86
|
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/CYgJF_JY.js,sha256=wIbvC8qcEbFh6Wuxi6tST_Zensm43mTMXLYV4HCoGjI,336
|
|
91
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/
|
|
92
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/
|
|
93
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/
|
|
94
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/
|
|
95
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/
|
|
96
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/
|
|
97
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/
|
|
98
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/DEgUu98i.js,sha256=4uzByZuiYWAxxDSBtTPBCQ_Y1u1xA4eHFzvS-VPjdO8,32475
|
|
99
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/DGTPl6Gk.js,sha256=x3TenwTNG546vlJHWf6GdCDqZRaFv6xiXHuWwTCodOY,2965
|
|
87
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/CZGpyrcA.js,sha256=OczW2hZdtQ-A-dpButvy6Qtxmh_Zz7IXi7IYWRDWwvE,2310
|
|
88
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/CfQ4mGwl.js,sha256=lhIayRp6S2E7KAs04hljI2p4VtK-DOj86q8c6kJkFP4,1120
|
|
89
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/CiaNZCBa.js,sha256=DkKEyMcaTvpJbsmHy7jqtQcd0aNxkuAlS4XbujUGMUo,1542
|
|
90
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/Cqo0Vpvt.js,sha256=49wdwOHZzY6AOZvdF2HebFbN2lbW-27sg3IfSIl3FUE,457619
|
|
91
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/Cy4fgWTG.js,sha256=96foUGOux1NNJXOnrrleeeIjlVsmjBvI7bmZugGm0I0,720
|
|
92
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/D5w4xp5l.js,sha256=LSWgMdUfrwnmd2jY1tJfUxfmYQXCB1IzOLXQSYtTT50,9899
|
|
93
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/DD63uD-T.js,sha256=JQ9HMuutbHmiKrq6xE0VXviRAQoHxAjwhsbbkltWMHg,12555
|
|
100
94
|
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/DIeogL5L.js,sha256=Ux-9DG7TuJMhTle8qli8iEz061qYxmM9ZlDzFdqSTc8,62
|
|
101
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/
|
|
102
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/
|
|
103
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/
|
|
104
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/
|
|
105
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/
|
|
106
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/
|
|
107
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/
|
|
108
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/
|
|
109
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/
|
|
110
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/
|
|
111
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/
|
|
112
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/
|
|
113
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/
|
|
95
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/DQ8aZ1o-.js,sha256=nrmZr5zcmN9IpiCBkN_cTuyXtVjz1PZqAsPpEPjgrGo,32473
|
|
96
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/DSxvnAMh.js,sha256=ybs4OjINaBmyUHsbJDR5Ht1yZkKI2v-mtjJchBSTWqQ,313
|
|
97
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/D_JuJOO3.js,sha256=2nTWadStNUmu8_tQRbET2OMvuesMnLNFwgCHrTr4uyA,1475
|
|
98
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/D_ynJAfY.js,sha256=nW5WWy-gcn7IMBm8GdVyZT9XXLffSRtwaUMmUiZ1AUU,23229
|
|
99
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/Dafy4oEQ.js,sha256=JYzaXKx2TvVq2fi1fr9n8Lx-AG3QDhFWaltVsYSVE70,2900
|
|
100
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/Dj4O-5se.js,sha256=sBY2I-HxImhs7UVcwtwK9zud-sYumTjBp-gC0uHIDa0,7293
|
|
101
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/DmjAI-UV.js,sha256=0zhuevMdyIMX8vFEMov4GlKhq3YDWQoM04XiBm-EIHY,13385
|
|
102
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/Dug7Bq1S.js,sha256=daviAjTEp3uDoi9wkx4MOcBUn9E4JnCnI8TsECcaKUc,1552
|
|
103
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/Dv5BSBQG.js,sha256=dMHupMa510uj5C-NL-IOIw7JrdRqzWE1jLa-9Re70jc,207
|
|
104
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/DzBTnFhV.js,sha256=vd_rJ3PlVQeaG6M6bFWvMVSiBn3X4WB5bWfSLW3kU30,512
|
|
105
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/DzX_yyqb.js,sha256=N0QF7LgpQak8H75obJ4BlhCVAthv3Z6NdN9zqd8D-dQ,6478
|
|
106
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/Frwd2CjB.js,sha256=YO0IQQzg3t0zg9qTMpPOVXbnNzPlpyvwxCRTmoFKD3M,23952
|
|
107
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/H4l0JFh9.js,sha256=XDTY-nHj6VMGwcb7Kt25HZZIZEgo8h8hxsUVeckDwqg,14152
|
|
108
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/H60ATh8g.js,sha256=C8kFJeZzY4xDlbzNh9f7ALysw8rdsxFENSdpgJ9ptH4,7348
|
|
109
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/qIv1kPyv.js,sha256=9oo3qcviFgqek4fmv6Ye2jTi2ztuiX72XcAMdAcNsXI,2692
|
|
110
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/sLqs1uaK.js,sha256=e2B6ze9MQI19QUZwQvuxuPLansxy-juDD2X0doRbnMU,2004
|
|
111
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/u-it74zV.js,sha256=iIlMfQgM3DleJzdMYdcMaVWXCnyuzEXqtCHvzBNBDbk,22661
|
|
112
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/entry/app.BPc0HQPq.js,sha256=EdnYCrG40vms8ibzydFz2O4kvigObEIzLtUZiqE1E4w,8989
|
|
113
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/entry/start.SNvc2nrm.js,sha256=r6YitV31BV3Tk0CUSUoEE9s7t8vv0OC_bm9bfb0EWMc,83
|
|
114
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/0.5jT7P06o.js,sha256=9vtyWRvT96t9ohcpci_i1I44z3MPxMK-m8hP8MrF31I,35786
|
|
115
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/1.Cdy-7S5q.js,sha256=IvWS8ppbj74M8v6TQy6UAntUwc87NASdZzSUcF19ATQ,544
|
|
116
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/10.C_uoESTX.js,sha256=wyHSDhCTU6JfAMp8u1tOOGN1zGtPAeDpBDHilQ7qTOY,1034
|
|
114
117
|
lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/11.CWG1ehzT.js,sha256=Z_ycfijsaOCIM9oWR-PD0RPyMfgqfQqKKXMjr3Xmt_g,99
|
|
115
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/12.
|
|
116
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/2.
|
|
117
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/3.
|
|
118
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/4.
|
|
119
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/5
|
|
120
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/6.
|
|
121
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/7.
|
|
122
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/8.
|
|
123
|
-
lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/9.
|
|
118
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/12.DcO8wIAc.js,sha256=YYlV83y9RSy6Tyv61ti0fAa8fbSc2mJUt7LOW0VhTAk,2945
|
|
119
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/2.BIldfkxL.js,sha256=5GxkcI29yaxeNtbwf9iVUonWNJ9ga1MCr_l-BxGAdpw,1405910
|
|
120
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/3.BC9z_TWM.js,sha256=JSaA68P6aJn2Xs4XZhztm1G8bWU5guFYCClIiyHR_Dc,468
|
|
121
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/4.D8X_Ch5n.js,sha256=x1Yt8sIo32sf78QJx0yDhzmSjeJkhblRB04lAEnTxoI,595
|
|
122
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/5.CAXhxJu6.js,sha256=TKCyOlezugvo99WTiwXY2M0Ur5q5FroVuiLFtDRpS0Q,15915
|
|
123
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/6.DRA5Ru_2.js,sha256=wwCqLyc_Kaq8BJ56WFLdSPihfUn4sn820N9-KW2vz98,555
|
|
124
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/7.WVBsruHQ.js,sha256=eBhqxFSSKo1tJirHyALMIGZZJhViAzGDKB4yVgEpBEo,942
|
|
125
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/8.BuKUrCEN.js,sha256=pyfo4OqJ9ekTeVOnPyabOnbNnIA_fr2nkO5NdLSpvDI,15214
|
|
126
|
+
lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/9.CUIn1yCR.js,sha256=tnJ1kQpb3MkhQJHCoDNDB1Vmw77j-EvWB230hZMUmr4,756
|
|
124
127
|
lightly_studio/dist_lightly_studio_view_app/_app/immutable/workers/clustering.worker-DKqeLtG0.js,sha256=08mMV2xxdfpfu9xPDbULd30WqpVC3GxitrqDieK3Qt0,256061
|
|
125
128
|
lightly_studio/dist_lightly_studio_view_app/_app/immutable/workers/search.worker-vNSty3B0.js,sha256=r7YWmAkJU793Lre4Mb7Vb3gvqQYwYYao_icJLrQFFbA,50997
|
|
126
|
-
lightly_studio/examples/example.py,sha256=
|
|
127
|
-
lightly_studio/examples/example_coco.py,sha256=
|
|
128
|
-
lightly_studio/examples/
|
|
129
|
-
lightly_studio/examples/
|
|
130
|
-
lightly_studio/examples/
|
|
131
|
-
lightly_studio/examples/
|
|
132
|
-
lightly_studio/
|
|
129
|
+
lightly_studio/examples/example.py,sha256=YRmIFUl7zkgoqce3XW7tOZzdhb3479mF3wCT3PwsM6U,690
|
|
130
|
+
lightly_studio/examples/example_coco.py,sha256=b8mIqYMiRP9dK8ERffoSKygwbdom9r113svz8uo3Xpk,471
|
|
131
|
+
lightly_studio/examples/example_coco_caption.py,sha256=o8K3LTU2B82_udmRstds-6im9yLCwKK4cOC_HrAKp0c,740
|
|
132
|
+
lightly_studio/examples/example_metadata.py,sha256=N1Tjs2bDYxLbYnvT9iOBiw78JEp0HQJMAEPl6F2RTmE,12822
|
|
133
|
+
lightly_studio/examples/example_selection.py,sha256=rzpxfbGO1hIs9BHsd6FlEuLsCkSs-MlyhUdrSkegl5g,778
|
|
134
|
+
lightly_studio/examples/example_split_work.py,sha256=lY6y-HNH9qc0Dt2cWBKMnWHwp4OY34hKyCPzS7u-VIg,1348
|
|
135
|
+
lightly_studio/examples/example_yolo.py,sha256=JXCohmIGBraRV1kquf4RBmf4R6jqSL1wrs3orIPA3hc,589
|
|
136
|
+
lightly_studio/export/export_dataset.py,sha256=gOa_2Dxn5LuKN_nNfZqQSlmi72YdXxzhIBX3-ylqVhg,2357
|
|
133
137
|
lightly_studio/export/lightly_studio_label_input.py,sha256=4IONORlFnrBQ5PpRwJ_9rMCzYTvhlAN7kWNb5UEAaaY,4355
|
|
134
138
|
lightly_studio/few_shot_classifier/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
135
139
|
lightly_studio/few_shot_classifier/classifier.py,sha256=BpPHd69cxMGpNZPJetW9XKmLzVlt9qRoAoSArdt2V50,2444
|
|
136
140
|
lightly_studio/few_shot_classifier/classifier_manager.py,sha256=a3Zf39vRXWCXTEJiRIs2GmO16m9HyIBAjmf3nyanWxU,24152
|
|
137
141
|
lightly_studio/few_shot_classifier/random_forest_classifier.py,sha256=XoZMhETO4pKGlfH_c6O1MNT-m-qiretifKd0L1iuAqs,17173
|
|
138
142
|
lightly_studio/metadata/complex_metadata.py,sha256=EV3KI11PHA0tHyEu7f-2DKLidlC3gr_mprn_vp-4KNg,1520
|
|
139
|
-
lightly_studio/metadata/compute_typicality.py,sha256=
|
|
143
|
+
lightly_studio/metadata/compute_typicality.py,sha256=UU2JRE8m7d--WSXTLYTfqPCksougc3c7JWIWKsrlbqI,2242
|
|
140
144
|
lightly_studio/metadata/gps_coordinate.py,sha256=FcUGhh0HiFI2FHPu_L9ylbaxbgctvu06jPsly_xzBek,1111
|
|
141
145
|
lightly_studio/metadata/metadata_protocol.py,sha256=kk9x2ZN2uAugnukU4OtEWL9JaW04sUyhM8NoQj8e-XE,554
|
|
142
146
|
lightly_studio/models/__init__.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
|
|
143
147
|
lightly_studio/models/annotation_label.py,sha256=oMOai50vyXOccgAONAvfQPPxiTwPFibgPtDXjT1nK58,1272
|
|
148
|
+
lightly_studio/models/caption.py,sha256=5wKFliFNCb3VB2j2gvEABsHeyDTUkxWgQOICr7TVs-g,1808
|
|
144
149
|
lightly_studio/models/classifier.py,sha256=jSyEEvVhE2pQbkup1kAcdJaXBQSDSBfS1kXbpC3OOXc,446
|
|
145
|
-
lightly_studio/models/dataset.py,sha256=
|
|
150
|
+
lightly_studio/models/dataset.py,sha256=UzmzUz4GLRSyyVVxymQaAEwHFGFVeMNwkPoTforgA7g,2814
|
|
146
151
|
lightly_studio/models/embedding_model.py,sha256=nlCxVyuBNDooYfnyFUmPd5xIOpaY7x1o_w2FrJg0hCI,995
|
|
147
|
-
lightly_studio/models/metadata.py,sha256=
|
|
148
|
-
lightly_studio/models/sample.py,sha256=
|
|
152
|
+
lightly_studio/models/metadata.py,sha256=oFlMCYTDAnhY684nLrIqeFKeKdZVbUwNFaUXv52UaCo,6587
|
|
153
|
+
lightly_studio/models/sample.py,sha256=OBMfxfBpwgmNPaYlHuIGHypsDkvSpUJCu2kSfRk8kPM,5674
|
|
149
154
|
lightly_studio/models/sample_embedding.py,sha256=2rCnT1bLpAYsGqeewTqvLDP4TBALKpgZl-UJY7q0M9k,1090
|
|
150
155
|
lightly_studio/models/settings.py,sha256=I0qC96sLi9-EJcgn6M00MdStISZius0X14Dp4Gc5P1I,1703
|
|
151
156
|
lightly_studio/models/tag.py,sha256=gdKjEKx_6uRs09SegzeVbssaeOEEiLvrwPG2u65WNxo,2479
|
|
@@ -156,11 +161,12 @@ lightly_studio/models/annotation/links.py,sha256=FoFGeoznbr8gHVrJo4l4xSvs7ko4SS2
|
|
|
156
161
|
lightly_studio/models/annotation/object_detection.py,sha256=lOvkt8uyPqXljy7oUmXx9_3IB1xdpjuVAxRQVgugsp8,1114
|
|
157
162
|
lightly_studio/models/annotation/semantic_segmentation.py,sha256=HVM3djqtM1KNq2mFYcDfjmNz8Fs3glEVjUOQ5tj5FFs,1348
|
|
158
163
|
lightly_studio/resolvers/__init__.py,sha256=fMGTt_WiKFrqk6W8UlCkZL_cZBHiUej4Q0pxHS3VWdo,137
|
|
159
|
-
lightly_studio/resolvers/
|
|
164
|
+
lightly_studio/resolvers/caption_resolver.py,sha256=sEDhOR4gKfrWQduAOviFqxEsMQHT_2GBjXkAZ-4ag9Y,2283
|
|
165
|
+
lightly_studio/resolvers/dataset_resolver.py,sha256=2-dY20Tm9W_XBq_ixBF1uokYGdjRL6oK9Gip55kEKVM,10375
|
|
160
166
|
lightly_studio/resolvers/embedding_model_resolver.py,sha256=GfcsSYj8Dw1WwFh0Zz4NPEPF2EgNJXTosTKW7_uo2YQ,4391
|
|
161
167
|
lightly_studio/resolvers/sample_embedding_resolver.py,sha256=M7Uw6Bv6XBHPXraV8ja_KpjJ35rQzlwGys-fAQLtwn0,2937
|
|
162
168
|
lightly_studio/resolvers/sample_resolver.py,sha256=dS8khKwxmsvyc8tYfswYLIkq4UFLOKEqpdYo0st5WIk,10901
|
|
163
|
-
lightly_studio/resolvers/samples_filter.py,sha256
|
|
169
|
+
lightly_studio/resolvers/samples_filter.py,sha256=DCvOuve9S_R4ttr-o3nHpowjgZI60tbwVAVALbqbQQ0,3482
|
|
164
170
|
lightly_studio/resolvers/settings_resolver.py,sha256=15mSvoBALtHps4un3s_dk2lB2F-e8v_II97vwn056sg,1628
|
|
165
171
|
lightly_studio/resolvers/tag_resolver.py,sha256=PuMQflQ-PumQF96EwAUcVkSIeFzi11JeqJDnXYwyyic,8782
|
|
166
172
|
lightly_studio/resolvers/annotation_label_resolver/__init__.py,sha256=c0NxLRVKQYKxnPuGEI8dO-dBE610QxH0Vkz0oQwDwsI,555
|
|
@@ -183,10 +189,10 @@ lightly_studio/resolvers/annotation_resolver/update_annotation_label.py,sha256=2
|
|
|
183
189
|
lightly_studio/resolvers/annotation_resolver/update_bounding_box.py,sha256=6Mok2dKXFSkFN3bSSd4TO_nUTTMKq83EN5aL5nocQQc,2280
|
|
184
190
|
lightly_studio/resolvers/annotations/__init__.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
|
|
185
191
|
lightly_studio/resolvers/annotations/annotations_filter.py,sha256=eaZT6wttubYjSC35N88ary1mZwnKIC7k0zZWRCHSKns,2696
|
|
186
|
-
lightly_studio/resolvers/metadata_resolver/__init__.py,sha256=
|
|
192
|
+
lightly_studio/resolvers/metadata_resolver/__init__.py,sha256=XQMRGHp4Pr74C01HyaN4m9sZyyzpCo-hne2djPAPs6c,322
|
|
187
193
|
lightly_studio/resolvers/metadata_resolver/metadata_filter.py,sha256=WpA5na4MfZxgRFNp_WdY6RA9FAnZPaL-mAGpb76pzm8,5169
|
|
188
|
-
lightly_studio/resolvers/metadata_resolver/sample/__init__.py,sha256=
|
|
189
|
-
lightly_studio/resolvers/metadata_resolver/sample/
|
|
194
|
+
lightly_studio/resolvers/metadata_resolver/sample/__init__.py,sha256=Aqg4g0_jXu9CmO85P5FSErJKLEbloaFG7is_L-jT27Q,413
|
|
195
|
+
lightly_studio/resolvers/metadata_resolver/sample/bulk_update_metadata.py,sha256=uJ2bbjeVXqWW190uZ57vGPq3JLj2AOBxWlV0znl9F5I,1587
|
|
190
196
|
lightly_studio/resolvers/metadata_resolver/sample/get_by_sample_id.py,sha256=CaI_3_Xx5qCWiTGpuo8KnxmB_Z4zHAH2cxPaDNH5mUo,665
|
|
191
197
|
lightly_studio/resolvers/metadata_resolver/sample/get_metadata_info.py,sha256=RwIv4GNcH0V3Oam8eH8Kh1S0m5kQkf1jtZ0r5XFeQHs,3314
|
|
192
198
|
lightly_studio/resolvers/metadata_resolver/sample/get_value_for_sample.py,sha256=NbPANvsFAyKvutYSC97HSFmmOmiNKcOU71zXmP3IRUU,702
|
|
@@ -231,6 +237,6 @@ lightly_studio/vendor/mobileclip/modules/image/replknet.py,sha256=kbcZTT3KAdpv7I
|
|
|
231
237
|
lightly_studio/vendor/mobileclip/modules/text/__init__.py,sha256=xIBdotHUSILUTw9Um4NfLunDEtNuQVKRcZlVhwJih38,104
|
|
232
238
|
lightly_studio/vendor/mobileclip/modules/text/repmixer.py,sha256=baFcHH8bLVeW2VET9gZvg2bUy080yLDVxDr4cuH2upg,9401
|
|
233
239
|
lightly_studio/vendor/mobileclip/modules/text/tokenizer.py,sha256=g569KONPF33J-2BWgghUy3Xcj0vDE-g00W1YpOZiGwk,1328
|
|
234
|
-
lightly_studio-0.3.
|
|
235
|
-
lightly_studio-0.3.
|
|
236
|
-
lightly_studio-0.3.
|
|
240
|
+
lightly_studio-0.3.4.dist-info/METADATA,sha256=XZyo48ppzR_s63AGgen0nVcApoGyWqkoe8jCmsrwt_Q,25725
|
|
241
|
+
lightly_studio-0.3.4.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
242
|
+
lightly_studio-0.3.4.dist-info/RECORD,,
|