supervisely 6.73.395__py3-none-any.whl → 6.73.397__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.
- supervisely/app/widgets/sampling/sampling.py +3 -1
- supervisely/convert/converter.py +18 -6
- supervisely/convert/image/sly/sly_image_helper.py +4 -1
- supervisely/convert/volume/nii/nii_volume_converter.py +2 -2
- supervisely/io/env.py +85 -0
- supervisely/io/fs.py +4 -3
- supervisely/nn/training/gui/gui.py +1 -1
- supervisely/video/sampling.py +4 -4
- {supervisely-6.73.395.dist-info → supervisely-6.73.397.dist-info}/METADATA +1 -1
- {supervisely-6.73.395.dist-info → supervisely-6.73.397.dist-info}/RECORD +14 -14
- {supervisely-6.73.395.dist-info → supervisely-6.73.397.dist-info}/LICENSE +0 -0
- {supervisely-6.73.395.dist-info → supervisely-6.73.397.dist-info}/WHEEL +0 -0
- {supervisely-6.73.395.dist-info → supervisely-6.73.397.dist-info}/entry_points.txt +0 -0
- {supervisely-6.73.395.dist-info → supervisely-6.73.397.dist-info}/top_level.txt +0 -0
|
@@ -32,6 +32,7 @@ class Sampling(Widget):
|
|
|
32
32
|
widgth: int = 370,
|
|
33
33
|
widget_id: str = None,
|
|
34
34
|
file_path: str = __file__,
|
|
35
|
+
copy_annotations: bool = True,
|
|
35
36
|
):
|
|
36
37
|
super().__init__(widget_id, file_path)
|
|
37
38
|
if not input_selectable and project_id is None:
|
|
@@ -53,6 +54,7 @@ class Sampling(Widget):
|
|
|
53
54
|
self.output_project_id = output_project_id
|
|
54
55
|
self.output_project_selectable = output_project_selectable
|
|
55
56
|
self.widgth = widgth
|
|
57
|
+
self._copy_annotations = copy_annotations
|
|
56
58
|
self.project_info = (
|
|
57
59
|
self._api.project.get_info_by_id(self.project_id) if self.project_id else None
|
|
58
60
|
)
|
|
@@ -129,7 +131,7 @@ class Sampling(Widget):
|
|
|
129
131
|
widgets=[self.resize_row, self.resize_hw_container], gap=0
|
|
130
132
|
)
|
|
131
133
|
self.copy_annotations_checkbox = Checkbox(
|
|
132
|
-
Text("Copy annotations from source project", font_size=13)
|
|
134
|
+
Text("Copy annotations from source project", font_size=13), checked=self._copy_annotations
|
|
133
135
|
)
|
|
134
136
|
self.copy_annotations_row = Flexbox(widgets=[self.copy_annotations_checkbox])
|
|
135
137
|
|
supervisely/convert/converter.py
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import os
|
|
2
2
|
from pathlib import Path
|
|
3
|
-
from typing import Optional
|
|
3
|
+
from typing import List, Optional, Union
|
|
4
4
|
|
|
5
5
|
from tqdm import tqdm
|
|
6
6
|
|
|
7
|
+
from supervisely import fs
|
|
7
8
|
from supervisely._utils import is_production
|
|
8
9
|
from supervisely.api.api import Api
|
|
9
10
|
from supervisely.app import get_data_dir
|
|
@@ -40,7 +41,7 @@ class ImportManager:
|
|
|
40
41
|
|
|
41
42
|
def __init__(
|
|
42
43
|
self,
|
|
43
|
-
input_data: str,
|
|
44
|
+
input_data: Union[str, List[str]],
|
|
44
45
|
project_type: ProjectType,
|
|
45
46
|
team_id: Optional[int] = None,
|
|
46
47
|
labeling_interface: LabelingInterface = LabelingInterface.DEFAULT,
|
|
@@ -60,7 +61,12 @@ class ImportManager:
|
|
|
60
61
|
self._remote_files_map = {}
|
|
61
62
|
self._modality = project_type
|
|
62
63
|
|
|
63
|
-
|
|
64
|
+
if isinstance(input_data, str):
|
|
65
|
+
input_data = [input_data]
|
|
66
|
+
|
|
67
|
+
self._input_data = get_data_dir()
|
|
68
|
+
for data in input_data:
|
|
69
|
+
self._prepare_input_data(data)
|
|
64
70
|
self._unpack_archives(self._input_data)
|
|
65
71
|
remove_junk_from_dir(self._input_data)
|
|
66
72
|
|
|
@@ -90,6 +96,7 @@ class ImportManager:
|
|
|
90
96
|
}
|
|
91
97
|
if str(self._modality) not in modality_converter_map:
|
|
92
98
|
raise ValueError(f"Unsupported project type selected: {self._modality}")
|
|
99
|
+
|
|
93
100
|
modality_converter = modality_converter_map[str(self._modality)](
|
|
94
101
|
self._input_data,
|
|
95
102
|
self._labeling_interface,
|
|
@@ -106,12 +113,17 @@ class ImportManager:
|
|
|
106
113
|
# raise NotImplementedError
|
|
107
114
|
|
|
108
115
|
def _prepare_input_data(self, input_data):
|
|
116
|
+
logger.debug(f"Preparing input data: {input_data}")
|
|
109
117
|
if dir_exists(input_data):
|
|
110
118
|
logger.info(f"Input data is a local directory: {input_data}")
|
|
111
|
-
return input_data
|
|
119
|
+
# return input_data
|
|
120
|
+
dst_dir = os.path.join(get_data_dir(), os.path.basename(os.path.normpath(input_data)))
|
|
121
|
+
fs.copy_dir_recursively(input_data, dst_dir)
|
|
112
122
|
elif file_exists(input_data):
|
|
113
123
|
logger.info(f"Input data is a local file: {input_data}. Will use its directory")
|
|
114
|
-
return os.path.dirname(input_data)
|
|
124
|
+
# return os.path.dirname(input_data)
|
|
125
|
+
dst_file = os.path.join(get_data_dir(), os.path.basename(input_data))
|
|
126
|
+
fs.copy_file(input_data, dst_file)
|
|
115
127
|
elif self._api.storage.exists(self._team_id, input_data):
|
|
116
128
|
if self._upload_as_links and str(self._modality) in [
|
|
117
129
|
ProjectType.IMAGES.value,
|
|
@@ -145,7 +157,7 @@ class ImportManager:
|
|
|
145
157
|
if not is_dir:
|
|
146
158
|
dir_name = "Import data"
|
|
147
159
|
local_path = os.path.join(get_data_dir(), dir_name)
|
|
148
|
-
mkdir(local_path, remove_content_if_exists=
|
|
160
|
+
mkdir(local_path, remove_content_if_exists=False)
|
|
149
161
|
save_path = os.path.join(local_path, os.path.basename(remote_path))
|
|
150
162
|
else:
|
|
151
163
|
dir_name = os.path.basename(os.path.normpath(remote_path))
|
|
@@ -19,7 +19,10 @@ SLY_OBJECT_KEYS = [
|
|
|
19
19
|
LabelJsonFields.TAGS,
|
|
20
20
|
LabelJsonFields.GEOMETRY_TYPE,
|
|
21
21
|
]
|
|
22
|
-
SLY_TAG_KEYS = [
|
|
22
|
+
SLY_TAG_KEYS = [
|
|
23
|
+
TagJsonFields.TAG_NAME,
|
|
24
|
+
# TagJsonFields.VALUE
|
|
25
|
+
]
|
|
23
26
|
|
|
24
27
|
|
|
25
28
|
# Check the annotation format documentation at
|
|
@@ -197,8 +197,8 @@ class NiiConverter(VolumeConverter):
|
|
|
197
197
|
leave=True if progress_cb is None else False,
|
|
198
198
|
position=1,
|
|
199
199
|
)
|
|
200
|
-
if item.custom_data
|
|
201
|
-
volume_meta
|
|
200
|
+
if isinstance(item.custom_data, dict) and "remote_path" in item.custom_data:
|
|
201
|
+
volume_meta["remote_path"] = item.custom_data["remote_path"]
|
|
202
202
|
api.volume.upload_np(dataset_id, item.name, volume_np, volume_meta, progress_nrrd)
|
|
203
203
|
info = api.volume.get_info_by_name(dataset_id, item.name)
|
|
204
204
|
item.volume_meta = info.meta
|
supervisely/io/env.py
CHANGED
|
@@ -36,6 +36,12 @@ def _int_from_env(value):
|
|
|
36
36
|
return int(value)
|
|
37
37
|
|
|
38
38
|
|
|
39
|
+
def _parse_list_from_env(value: str) -> List[str]:
|
|
40
|
+
import ast
|
|
41
|
+
|
|
42
|
+
return [str(x).strip() for x in ast.literal_eval(value)]
|
|
43
|
+
|
|
44
|
+
|
|
39
45
|
def _parse_from_env(
|
|
40
46
|
name: str,
|
|
41
47
|
keys: List[str],
|
|
@@ -214,6 +220,32 @@ def team_files_folder(raise_not_found: Optional[bool] = True) -> str:
|
|
|
214
220
|
)
|
|
215
221
|
|
|
216
222
|
|
|
223
|
+
def team_files_folders(raise_not_found: Optional[bool] = True) -> List[str]:
|
|
224
|
+
"""Returns paths to the team files folders from environment variable using following keys:
|
|
225
|
+
- CONTEXT_SLYFOLDERS
|
|
226
|
+
- context.slyFolders
|
|
227
|
+
- modal.state.slyFolders
|
|
228
|
+
- FOLDERS
|
|
229
|
+
NOTE: same as team_files_folders
|
|
230
|
+
:param raise_not_found: if True, raises KeyError if team files folders are not found in environment variables
|
|
231
|
+
:type raise_not_found: Optional[bool]
|
|
232
|
+
:return: path to the team files folders
|
|
233
|
+
:rtype: str
|
|
234
|
+
"""
|
|
235
|
+
return _parse_from_env(
|
|
236
|
+
name="team_files_folders",
|
|
237
|
+
keys=[
|
|
238
|
+
"CONTEXT_SLYFOLDERS",
|
|
239
|
+
"context.slyFolders",
|
|
240
|
+
"modal.state.slyFolders",
|
|
241
|
+
"FOLDERS",
|
|
242
|
+
],
|
|
243
|
+
postprocess_fn=_parse_list_from_env,
|
|
244
|
+
default=[],
|
|
245
|
+
raise_not_found=raise_not_found,
|
|
246
|
+
)
|
|
247
|
+
|
|
248
|
+
|
|
217
249
|
def folder(raise_not_found: Optional[bool] = True) -> str:
|
|
218
250
|
"""Returns path to the team files folder from environment variable using following keys:
|
|
219
251
|
- CONTEXT_SLYFOLDER
|
|
@@ -229,6 +261,21 @@ def folder(raise_not_found: Optional[bool] = True) -> str:
|
|
|
229
261
|
return team_files_folder(raise_not_found)
|
|
230
262
|
|
|
231
263
|
|
|
264
|
+
def folders(raise_not_found: Optional[bool] = True) -> List[str]:
|
|
265
|
+
"""Returns paths to the team files folders from environment variable using following keys:
|
|
266
|
+
- CONTEXT_SLYFOLDERS
|
|
267
|
+
- context.slyFolders
|
|
268
|
+
- modal.state.slyFolders
|
|
269
|
+
- FOLDERS
|
|
270
|
+
NOTE: Same as team_files_folders
|
|
271
|
+
:param raise_not_found: if True, raises KeyError if team files folders are not found in environment variables
|
|
272
|
+
:type raise_not_found: Optional[bool]
|
|
273
|
+
:return: path to the team files folders
|
|
274
|
+
:rtype: str
|
|
275
|
+
"""
|
|
276
|
+
return team_files_folders(raise_not_found)
|
|
277
|
+
|
|
278
|
+
|
|
232
279
|
def team_files_file(raise_not_found: Optional[bool] = True) -> str:
|
|
233
280
|
"""Returns path to the file in the team files from environment variable using following keys:
|
|
234
281
|
- CONTEXT_SLYFILE
|
|
@@ -251,6 +298,28 @@ def team_files_file(raise_not_found: Optional[bool] = True) -> str:
|
|
|
251
298
|
)
|
|
252
299
|
|
|
253
300
|
|
|
301
|
+
def team_files_files(raise_not_found: Optional[bool] = True) -> List[str]:
|
|
302
|
+
"""Returns paths to the files in the team files from environment variable using following keys:
|
|
303
|
+
- CONTEXT_SLYFILES
|
|
304
|
+
- context.slyFiles
|
|
305
|
+
- modal.state.slyFiles
|
|
306
|
+
- FILES
|
|
307
|
+
|
|
308
|
+
NOTE: same as team_files_file
|
|
309
|
+
:param raise_not_found: if True, raises KeyError if file is not found in environment variables
|
|
310
|
+
:type raise_not_found: Optional[bool]
|
|
311
|
+
:return: path to the file in the team files
|
|
312
|
+
:rtype: str
|
|
313
|
+
"""
|
|
314
|
+
return _parse_from_env(
|
|
315
|
+
name="team_files_files",
|
|
316
|
+
keys=["CONTEXT_SLYFILES", "context.slyFiles", "modal.state.slyFiles", "FILES"],
|
|
317
|
+
postprocess_fn=_parse_list_from_env,
|
|
318
|
+
default=[],
|
|
319
|
+
raise_not_found=raise_not_found,
|
|
320
|
+
)
|
|
321
|
+
|
|
322
|
+
|
|
254
323
|
def server_address(raise_not_found: Optional[bool] = True) -> str:
|
|
255
324
|
"""Returns server address from environment variable using following keys:
|
|
256
325
|
- SERVER_ADDRESS
|
|
@@ -321,6 +390,22 @@ def file(raise_not_found: Optional[bool] = True) -> str:
|
|
|
321
390
|
return team_files_file(raise_not_found)
|
|
322
391
|
|
|
323
392
|
|
|
393
|
+
def files(raise_not_found: Optional[bool] = True) -> List[str]:
|
|
394
|
+
"""Returns paths to the files in the team files from environment variable using following keys:
|
|
395
|
+
- CONTEXT_SLYFILES
|
|
396
|
+
- context.slyFiles
|
|
397
|
+
- modal.state.slyFiles
|
|
398
|
+
- FILES
|
|
399
|
+
|
|
400
|
+
NOTE: Same as team_files_files
|
|
401
|
+
:param raise_not_found: if True, raises KeyError if file is not found in environment variables
|
|
402
|
+
:type raise_not_found: Optional[bool]
|
|
403
|
+
:return: path to the file in the team files
|
|
404
|
+
:rtype: str
|
|
405
|
+
"""
|
|
406
|
+
return team_files_files(raise_not_found)
|
|
407
|
+
|
|
408
|
+
|
|
324
409
|
def task_id(raise_not_found: Optional[bool] = True) -> int:
|
|
325
410
|
"""Returns task id from environment variable using following keys:
|
|
326
411
|
- TASK_ID
|
supervisely/io/fs.py
CHANGED
|
@@ -1154,14 +1154,15 @@ def copy_dir_recursively(
|
|
|
1154
1154
|
src_dir: str, dst_dir: str, progress_cb: Optional[Union[tqdm, Callable]] = None
|
|
1155
1155
|
) -> List[str]:
|
|
1156
1156
|
mkdir(dst_dir)
|
|
1157
|
+
src_dir_norm = src_dir.rstrip(os.sep)
|
|
1157
1158
|
|
|
1158
|
-
for rel_sub_dir in get_subdirs(
|
|
1159
|
+
for rel_sub_dir in get_subdirs(src_dir_norm, recursive=True):
|
|
1159
1160
|
dst_sub_dir = os.path.join(dst_dir, rel_sub_dir)
|
|
1160
1161
|
mkdir(dst_sub_dir)
|
|
1161
1162
|
|
|
1162
|
-
files = list_files_recursively(
|
|
1163
|
+
files = list_files_recursively(src_dir_norm)
|
|
1163
1164
|
for src_file_path in files:
|
|
1164
|
-
dst_file_path = os.path.normpath(src_file_path.replace(
|
|
1165
|
+
dst_file_path = os.path.normpath(src_file_path.replace(src_dir_norm, dst_dir))
|
|
1165
1166
|
ensure_base_path(dst_file_path)
|
|
1166
1167
|
if not file_exists(dst_file_path):
|
|
1167
1168
|
copy_file(src_file_path, dst_file_path)
|
|
@@ -259,7 +259,7 @@ class TrainGUI:
|
|
|
259
259
|
self.workspace_id = sly_env.workspace_id(raise_not_found=False)
|
|
260
260
|
self.project_id = sly_env.project_id()
|
|
261
261
|
self.project_info = self._api.project.get_info_by_id(self.project_id)
|
|
262
|
-
if self.project_info
|
|
262
|
+
if self.project_info is None:
|
|
263
263
|
raise ValueError(f"Project with ID: '{self.project_id}' does not exist or was archived")
|
|
264
264
|
|
|
265
265
|
self.project_meta = ProjectMeta.from_json(self._api.project.get_meta(self.project_id))
|
supervisely/video/sampling.py
CHANGED
|
@@ -416,14 +416,14 @@ def _update_meta(
|
|
|
416
416
|
api.project.get_meta(dst_project_id)
|
|
417
417
|
)
|
|
418
418
|
dst_project_meta = context.project_meta[dst_project_id]
|
|
419
|
-
dst_project_meta.merge(src_project_meta)
|
|
419
|
+
dst_project_meta = dst_project_meta.merge(src_project_meta)
|
|
420
420
|
if dst_project_meta.get_tag_meta(VIDEO_OBJECT_TAG_META.name) is None:
|
|
421
|
-
dst_project_meta.add_tag_meta(VIDEO_OBJECT_TAG_META)
|
|
421
|
+
dst_project_meta = dst_project_meta.add_tag_meta(VIDEO_OBJECT_TAG_META)
|
|
422
422
|
if dst_project_meta.get_tag_meta(AUTO_TRACKED_TAG_META.name) is None:
|
|
423
|
-
dst_project_meta.add_tag_meta(AUTO_TRACKED_TAG_META)
|
|
423
|
+
dst_project_meta = dst_project_meta.add_tag_meta(AUTO_TRACKED_TAG_META)
|
|
424
424
|
|
|
425
425
|
if dst_project_meta != src_project_meta:
|
|
426
|
-
api.project.update_meta(dst_project_id, dst_project_meta.to_json())
|
|
426
|
+
dst_project_meta = api.project.update_meta(dst_project_id, dst_project_meta.to_json())
|
|
427
427
|
context.project_meta[dst_project_id] = dst_project_meta
|
|
428
428
|
|
|
429
429
|
|
|
@@ -431,7 +431,7 @@ supervisely/app/widgets/run_app_button/run_app_button.py,sha256=cr07jabP1vF-rvH0
|
|
|
431
431
|
supervisely/app/widgets/run_app_button/script.js,sha256=6rlluiW1hbHN7swtNSoFX9Gmrz2U-nRNOwoUpnSBmiw,2736
|
|
432
432
|
supervisely/app/widgets/run_app_button/template.html,sha256=rFIYPC9hl2b9H_LR1Kr_1RCpzfAAd-FBcmTmt75YXnE,511
|
|
433
433
|
supervisely/app/widgets/sampling/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
434
|
-
supervisely/app/widgets/sampling/sampling.py,sha256=
|
|
434
|
+
supervisely/app/widgets/sampling/sampling.py,sha256=UWDb1uZ71W0h9pa7rXVyj1999zaAKGIHh250CgUJ0l0,22215
|
|
435
435
|
supervisely/app/widgets/scatter_chart/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
436
436
|
supervisely/app/widgets/scatter_chart/scatter_chart.py,sha256=nX7fZbWsDiMjOek5FvIHgKbnBwQ-ol_V3XvnoAnz59c,4832
|
|
437
437
|
supervisely/app/widgets/select/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -576,7 +576,7 @@ supervisely/collection/key_indexed_collection.py,sha256=x2UVlkprspWhhae9oLUzjTWB
|
|
|
576
576
|
supervisely/collection/str_enum.py,sha256=Zp29yFGvnxC6oJRYNNlXhO2lTSdsriU1wiGHj6ahEJE,1250
|
|
577
577
|
supervisely/convert/__init__.py,sha256=ropgB1eebG2bfLoJyf2jp8Vv9UkFujaW3jVX-71ho1g,1353
|
|
578
578
|
supervisely/convert/base_converter.py,sha256=bc-QlT7kliHxrhM0bdHzgNVSfzDGgecrmaZH_nFZsL0,18597
|
|
579
|
-
supervisely/convert/converter.py,sha256=
|
|
579
|
+
supervisely/convert/converter.py,sha256=aOURdIdWWbK2JT5X-kUr8JfAatr1NUkwnv1mAmFS5y0,11426
|
|
580
580
|
supervisely/convert/image/__init__.py,sha256=JEuyaBiiyiYmEUYqdn8Mog5FVXpz0H1zFubKkOOm73I,1395
|
|
581
581
|
supervisely/convert/image/image_converter.py,sha256=8vak8ZoKTN1ye2ZmCTvCZ605-Rw1AFLIEo7bJMfnR68,10426
|
|
582
582
|
supervisely/convert/image/image_helper.py,sha256=VfFJmMEdMTOZ-G15lFEYUuFC0z62aHWrw8MLigxJS58,3647
|
|
@@ -618,7 +618,7 @@ supervisely/convert/image/pdf/pdf_helper.py,sha256=IDwLEvsVy8lu-KC1lXvSRkZZ9BCC6
|
|
|
618
618
|
supervisely/convert/image/sly/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
619
619
|
supervisely/convert/image/sly/fast_sly_image_converter.py,sha256=r_Nhowicm-oah-XfGEeAOrGNbIzMh63m6ZRYaLKHUu0,5903
|
|
620
620
|
supervisely/convert/image/sly/sly_image_converter.py,sha256=dT7fVivM-u2hhKehGJWPeLsVTi4nW-WX1X6Lktl2mks,14812
|
|
621
|
-
supervisely/convert/image/sly/sly_image_helper.py,sha256=
|
|
621
|
+
supervisely/convert/image/sly/sly_image_helper.py,sha256=8zSWtLlF5fZUaR8UMUqqEvLqyz8HrsDxfb5AcwYW3Qs,7385
|
|
622
622
|
supervisely/convert/image/yolo/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
623
623
|
supervisely/convert/image/yolo/yolo_converter.py,sha256=Wn5dR05y4SEPONcaxWr9ofnbvbf-SbRZN0fkksk5Dps,11391
|
|
624
624
|
supervisely/convert/image/yolo/yolo_helper.py,sha256=5b0ShsVlqikA071VT8AiRW_079_WD6pdB5Bx3OU12Bw,25989
|
|
@@ -675,7 +675,7 @@ supervisely/convert/volume/dicom/dicom_converter.py,sha256=Hw4RxU_qvllk6M26udZE6
|
|
|
675
675
|
supervisely/convert/volume/dicom/dicom_helper.py,sha256=OrKlyt1hA5BOXKhE1LF1WxBIv3b6t96xRras4OSAuNM,2891
|
|
676
676
|
supervisely/convert/volume/nii/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
677
677
|
supervisely/convert/volume/nii/nii_planes_volume_converter.py,sha256=QTdmtqLrRBFSa0IZKhAnFkLl1J3nayzQQDwpglvEN64,16915
|
|
678
|
-
supervisely/convert/volume/nii/nii_volume_converter.py,sha256=
|
|
678
|
+
supervisely/convert/volume/nii/nii_volume_converter.py,sha256=gR1_dfUf0L-K49B8qVHF7DiiDKDmxUQKKSPLdlqoYC4,8691
|
|
679
679
|
supervisely/convert/volume/nii/nii_volume_helper.py,sha256=nkfTG2NGmnf4AfrZ0lULSHaUBx1G24NJUO_5FNejolE,16032
|
|
680
680
|
supervisely/convert/volume/sly/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
681
681
|
supervisely/convert/volume/sly/sly_volume_converter.py,sha256=TI1i_aVYFFoqLHqVzCXnFeR6xobhGcgN_xWFZcpRqbE,6730
|
|
@@ -723,9 +723,9 @@ supervisely/imaging/font.py,sha256=0XcmWhlw7y2PAhrWgcsfInyRWj0WnlFpMSEXXilR8UA,2
|
|
|
723
723
|
supervisely/imaging/image.py,sha256=1KNc4qRbP9OlI4Yta07Kc2ohAgSBJ_9alF9Jag74w30,41873
|
|
724
724
|
supervisely/io/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
725
725
|
supervisely/io/docker_utils.py,sha256=hb_HXGM8IYB0PF-nD7NxMwaHgzaxIFxofsUzQ_RCUZI,7935
|
|
726
|
-
supervisely/io/env.py,sha256=
|
|
726
|
+
supervisely/io/env.py,sha256=l-Xkil6FVxMP8FmnjF4H4p3RJQ3AoBd0OUjZHA2QVTc,21193
|
|
727
727
|
supervisely/io/exception_handlers.py,sha256=_nAgMFeE94bCxEvWakR82hMtdOJUyn7Gc7OymMxI9WI,36484
|
|
728
|
-
supervisely/io/fs.py,sha256=
|
|
728
|
+
supervisely/io/fs.py,sha256=pzNAK5fbT3G-7PKRY5oYcOPjgXeZ9x5Dyry7fzzZsr8,63604
|
|
729
729
|
supervisely/io/fs_cache.py,sha256=985gvBGzveLcDudgz10E4EWVjP9jxdU1Pa0GFfCBoCA,6520
|
|
730
730
|
supervisely/io/github_utils.py,sha256=jGmvQJ5bjtACuSFABzrxL0jJdh14SezovrHp8T-9y8g,1779
|
|
731
731
|
supervisely/io/json.py,sha256=25gBqA8nkKZW1xvssdmRYuJrO5fmIR0Z5cZGePfrJV4,8539
|
|
@@ -1002,7 +1002,7 @@ supervisely/nn/training/__init__.py,sha256=gY4PCykJ-42MWKsqb9kl-skemKa8yB6t_fb5k
|
|
|
1002
1002
|
supervisely/nn/training/train_app.py,sha256=mPSCxcAvw5k_YzyaztvOmUr26ni6J624LIIb_Zxa-9g,123596
|
|
1003
1003
|
supervisely/nn/training/gui/__init__.py,sha256=Nqnn8clbgv-5l0PgxcTOldg8mkMKrFn4TvPL-rYUUGg,1
|
|
1004
1004
|
supervisely/nn/training/gui/classes_selector.py,sha256=tqmVwUfC2u5K53mZmvDvNOhu9Mw5mddjpB2kxRXXUO8,12453
|
|
1005
|
-
supervisely/nn/training/gui/gui.py,sha256=
|
|
1005
|
+
supervisely/nn/training/gui/gui.py,sha256=RLCVtKefWYPHlPN-U8iyAdPHH6Qvx6HE3fFCqyq3rZ4,49210
|
|
1006
1006
|
supervisely/nn/training/gui/hyperparameters_selector.py,sha256=bcCxJ9-8NjZa0U9XWHysrMzr8dxqXiqUgX5lbDiAm5A,7767
|
|
1007
1007
|
supervisely/nn/training/gui/input_selector.py,sha256=rmirJzpdxuYONI6y5_cvMdGWBJ--T20YTsISghATHu4,2510
|
|
1008
1008
|
supervisely/nn/training/gui/model_selector.py,sha256=Fvsja7n75PzqxDkDhPEkCltYsbAPPRpUxgWgIZCseks,7439
|
|
@@ -1075,7 +1075,7 @@ supervisely/user/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,
|
|
|
1075
1075
|
supervisely/user/user.py,sha256=4GSVIupPAxWjIxZmUtH3Dtms_vGV82-49kM_aaR2gBI,319
|
|
1076
1076
|
supervisely/video/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
1077
1077
|
supervisely/video/import_utils.py,sha256=b1Nl0gscNsV0iB9nWPeqt8GrkhOeuTZsN1p-d3gDUmE,544
|
|
1078
|
-
supervisely/video/sampling.py,sha256
|
|
1078
|
+
supervisely/video/sampling.py,sha256=jTtXAZrq_hkxFQSSdwFp-lYUKX8HZf1nO-4trzMCQis,20197
|
|
1079
1079
|
supervisely/video/video.py,sha256=QGV1R3qNOJ0zgsfItqv-e7mbEnWqFpE3rcJwt7izC28,20206
|
|
1080
1080
|
supervisely/video_annotation/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
1081
1081
|
supervisely/video_annotation/constants.py,sha256=_gW9iMhVk1w_dUaFiaiyXn66mt13S6bkxC64xpjP-CU,529
|
|
@@ -1114,9 +1114,9 @@ supervisely/worker_proto/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZ
|
|
|
1114
1114
|
supervisely/worker_proto/worker_api_pb2.py,sha256=VQfi5JRBHs2pFCK1snec3JECgGnua3Xjqw_-b3aFxuM,59142
|
|
1115
1115
|
supervisely/worker_proto/worker_api_pb2_grpc.py,sha256=3BwQXOaP9qpdi0Dt9EKG--Lm8KGN0C5AgmUfRv77_Jk,28940
|
|
1116
1116
|
supervisely_lib/__init__.py,sha256=7-3QnN8Zf0wj8NCr2oJmqoQWMKKPKTECvjH9pd2S5vY,159
|
|
1117
|
-
supervisely-6.73.
|
|
1118
|
-
supervisely-6.73.
|
|
1119
|
-
supervisely-6.73.
|
|
1120
|
-
supervisely-6.73.
|
|
1121
|
-
supervisely-6.73.
|
|
1122
|
-
supervisely-6.73.
|
|
1117
|
+
supervisely-6.73.397.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
|
|
1118
|
+
supervisely-6.73.397.dist-info/METADATA,sha256=IIC5TyRVz6pnTYzbaQVNCOYReuxJd8xM0TySIw_WcCs,35254
|
|
1119
|
+
supervisely-6.73.397.dist-info/WHEEL,sha256=iAkIy5fosb7FzIOwONchHf19Qu7_1wCWyFNR5gu9nU0,91
|
|
1120
|
+
supervisely-6.73.397.dist-info/entry_points.txt,sha256=U96-5Hxrp2ApRjnCoUiUhWMqijqh8zLR03sEhWtAcms,102
|
|
1121
|
+
supervisely-6.73.397.dist-info/top_level.txt,sha256=kcFVwb7SXtfqZifrZaSE3owHExX4gcNYe7Q2uoby084,28
|
|
1122
|
+
supervisely-6.73.397.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|