supervisely 6.73.459__py3-none-any.whl → 6.73.468__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 supervisely might be problematic. Click here for more details.

@@ -103,7 +103,6 @@ def _upload_annotations(api: Api, image_ids, frame_indices, video_annotation: Vi
103
103
  api.annotation.upload_anns(image_ids, anns=anns)
104
104
 
105
105
 
106
-
107
106
  def _upload_frames(
108
107
  api: Api,
109
108
  frames: List[np.ndarray],
@@ -226,28 +225,48 @@ def sample_video(
226
225
  progress.miniters = 1
227
226
  progress.refresh()
228
227
 
229
- with VideoFrameReader(video_path, frame_indices) as reader:
230
- for batch in batched_iter(zip(reader, frame_indices), 10):
231
- frames, indices = zip(*batch)
232
- for frame in frames:
228
+ batch_size = 50
229
+ try:
230
+ with VideoFrameReader(video_path, frame_indices) as reader:
231
+ for batch_indices in batched_iter(frame_indices, batch_size):
232
+ batch_indices_list = list(batch_indices)
233
+ frames = reader.read_batch(batch_indices_list)
234
+
233
235
  if resize:
234
- cv2.resize(frame, [*resize, frame.shape[2]], interpolation=cv2.INTER_LINEAR)
236
+ resized_frames = []
237
+ for frame in frames:
238
+ resized_frame = cv2.resize(
239
+ frame,
240
+ (resize[1], resize[0]), # (width, height)
241
+ interpolation=cv2.INTER_LINEAR,
242
+ )
243
+ resized_frames.append(resized_frame)
244
+ frames = resized_frames
245
+
246
+ image_ids = _upload_frames(
247
+ api=api,
248
+ frames=frames,
249
+ video_name=video_info.name,
250
+ video_frames_count=video_info.frames_count,
251
+ indices=batch_indices_list,
252
+ dataset_id=dst_dataset_info.id,
253
+ sample_info=sample_info,
254
+ context=context,
255
+ copy_annotations=copy_annotations,
256
+ video_annotation=video_annotation,
257
+ )
235
258
 
236
- image_ids = _upload_frames(
237
- api=api,
238
- frames=frames,
239
- video_name=video_info.name,
240
- video_frames_count=video_info.frames_count,
241
- indices=indices,
242
- dataset_id=dst_dataset_info.id,
243
- sample_info=sample_info,
244
- context=context,
245
- copy_annotations=copy_annotations,
246
- video_annotation=video_annotation,
247
- )
259
+ if progress is not None:
260
+ progress.update(len(image_ids))
248
261
 
249
- if progress is not None:
250
- progress.update(len(image_ids))
262
+ # Free memory after each batch
263
+ del frames
264
+ if resize:
265
+ del resized_frames
266
+ finally:
267
+ import os
268
+ if os.path.exists(video_path):
269
+ os.remove(video_path)
251
270
 
252
271
 
253
272
  def _get_or_create_dst_dataset(
@@ -537,11 +537,9 @@ class VideoFrameReader:
537
537
  try:
538
538
  import decord
539
539
 
540
- self.vr = decord.VideoReader(str(self.video_path))
540
+ self.vr = decord.VideoReader(str(self.video_path), num_threads=1)
541
541
  except ImportError:
542
- default_logger.debug(
543
- "Decord is not installed. Falling back to OpenCV for video reading."
544
- )
542
+ default_logger.debug("Decord is not installed. Falling back to OpenCV for video reading.")
545
543
  self.cap = cv2.VideoCapture(str(self.video_path))
546
544
 
547
545
  def close(self):
@@ -562,24 +560,30 @@ class VideoFrameReader:
562
560
  def __del__(self):
563
561
  self.close()
564
562
 
565
- def iterate_frames(self, frame_indexes: List[int] = None) -> Generator[np.ndarray, None, None]:
563
+ def iterate_frames(self, frame_indexes: Optional[List[int]] = None) -> Generator[np.ndarray, None, None]:
566
564
  self._ensure_initialized()
567
565
  if frame_indexes is None:
568
566
  frame_indexes = self.frame_indexes
569
567
  if self.vr is not None:
568
+ # Decord
570
569
  if frame_indexes is None:
571
570
  frame_indexes = range(len(self.vr))
572
- for frame_index in frame_indexes:
573
- frame = self.vr[frame_index]
574
- yield frame.asnumpy()
571
+ for idx in frame_indexes:
572
+ arr = self.vr[idx].asnumpy()
573
+ yield arr
574
+ del arr
575
575
  else:
576
+ # OpenCV fallback
576
577
  if frame_indexes is None:
577
578
  frame_count = int(self.cap.get(cv2.CAP_PROP_FRAME_COUNT))
578
579
  frame_indexes = range(frame_count)
579
580
  for frame_index in frame_indexes:
580
- if 1 > frame_index - self.prev_idx < 20:
581
+ if 1 < frame_index - self.prev_idx < 20:
581
582
  while self.prev_idx < frame_index - 1:
582
- self.cap.read()
583
+ ok, _ = self.cap.read()
584
+ if not ok:
585
+ break
586
+ self.prev_idx += 1
583
587
  if frame_index != self.prev_idx + 1:
584
588
  self.cap.set(cv2.CAP_PROP_POS_FRAMES, frame_index)
585
589
  ret, frame = self.cap.read()
@@ -588,6 +592,17 @@ class VideoFrameReader:
588
592
  yield cv2.cvtColor(frame, cv2.COLOR_BGR2RGB)
589
593
  self.prev_idx = frame_index
590
594
 
595
+ def read_batch(self, frame_indexes: List[int]) -> List[np.ndarray]:
596
+ self._ensure_initialized()
597
+ if self.vr is not None:
598
+ batch_nd = self.vr.get_batch(frame_indexes)
599
+ batch_np = batch_nd.asnumpy()
600
+ frames = [batch_np[i].copy() for i in range(batch_np.shape[0])]
601
+ del batch_np
602
+ return frames
603
+ else:
604
+ return list(self.iterate_frames(frame_indexes))
605
+
591
606
  def read_frames(self, frame_indexes: List[int] = None) -> List[np.ndarray]:
592
607
  return list(self.iterate_frames(frame_indexes))
593
608
 
@@ -15,6 +15,8 @@ from supervisely.io.fs import (
15
15
  change_directory_at_index,
16
16
  )
17
17
 
18
+ if not hasattr(np, "bool"):
19
+ np.bool = np.bool_
18
20
 
19
21
  def matrix_from_nrrd_header(header: Dict) -> np.ndarray:
20
22
  """
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: supervisely
3
- Version: 6.73.459
3
+ Version: 6.73.468
4
4
  Summary: Supervisely Python SDK.
5
5
  Home-page: https://github.com/supervisely/supervisely
6
6
  Author: Supervisely
@@ -21,14 +21,14 @@ Requires-Python: >=3.8
21
21
  Description-Content-Type: text/markdown
22
22
  License-File: LICENSE
23
23
  Requires-Dist: cachetools<=5.5.0,>=4.2.3
24
- Requires-Dist: numpy<2.0.0,>=1.19
24
+ Requires-Dist: numpy<=2.3.3,>=1.19
25
25
  Requires-Dist: opencv-python<5.0.0.0,>=4.6.0.66
26
26
  Requires-Dist: PTable<1.0.0,>=0.9.2
27
27
  Requires-Dist: pillow<=10.4.0,>=5.4.1
28
28
  Requires-Dist: python-json-logger<3.0.0,>=0.1.11
29
29
  Requires-Dist: requests<3.0.0,>=2.27.1
30
30
  Requires-Dist: requests-toolbelt>=0.9.1
31
- Requires-Dist: Shapely<=2.0.2,>=1.7.1
31
+ Requires-Dist: Shapely<=2.1.2,>=1.7.1
32
32
  Requires-Dist: bidict<1.0.0,>=0.21.2
33
33
  Requires-Dist: varname<1.0.0,>=0.8.1
34
34
  Requires-Dist: python-dotenv<=1.0.1,>=0.19.2
@@ -39,9 +39,9 @@ Requires-Dist: stringcase<2.0.0,>=1.2.0
39
39
  Requires-Dist: python-magic<1.0.0,>=0.4.25
40
40
  Requires-Dist: trimesh<=4.5.0,>=3.11.2
41
41
  Requires-Dist: uvicorn[standard]<1.0.0,>=0.18.2
42
- Requires-Dist: pydantic<=2.11.3,>=1.7.4
43
- Requires-Dist: anyio<=4.2.0,>=3.7.1
44
- Requires-Dist: fastapi<=0.109.0,>=0.79.0
42
+ Requires-Dist: starlette<=0.47.3
43
+ Requires-Dist: pydantic<=2.12.3,>=1.7.4
44
+ Requires-Dist: fastapi<=0.119.1,>=0.103.1
45
45
  Requires-Dist: websockets<=13.1,>=10.3
46
46
  Requires-Dist: jinja2<4.0.0,>=3.0.3
47
47
  Requires-Dist: psutil<6.0.0,>=5.9.0
@@ -49,7 +49,7 @@ Requires-Dist: jsonpatch<2.0,>=1.32
49
49
  Requires-Dist: MarkupSafe<3.0.0,>=2.1.1
50
50
  Requires-Dist: arel<1.0.0,>=0.2.0
51
51
  Requires-Dist: tqdm<5.0.0,>=4.62.3
52
- Requires-Dist: pandas<=2.1.4,>=1.1.3
52
+ Requires-Dist: pandas<=2.3.3,>=1.1.3
53
53
  Requires-Dist: async-asgi-testclient
54
54
  Requires-Dist: PyYAML>=5.4.0
55
55
  Requires-Dist: distinctipy
@@ -70,6 +70,7 @@ Requires-Dist: zstd
70
70
  Requires-Dist: aiofiles
71
71
  Requires-Dist: httpx[http2]==0.27.2
72
72
  Requires-Dist: debugpy
73
+ Requires-Dist: setuptools<81.0.0
73
74
  Provides-Extra: agent
74
75
  Requires-Dist: protobuf<=3.20.3,>=3.19.5; extra == "agent"
75
76
  Provides-Extra: apps
@@ -82,10 +83,11 @@ Requires-Dist: jsonpatch<2.0,>=1.32; extra == "apps"
82
83
  Requires-Dist: MarkupSafe<3.0.0,>=2.1.1; extra == "apps"
83
84
  Requires-Dist: arel<1.0.0,>=0.2.0; extra == "apps"
84
85
  Requires-Dist: tqdm<5.0.0,>=4.62.3; extra == "apps"
85
- Requires-Dist: pandas<1.4.0,>=1.1.3; extra == "apps"
86
+ Requires-Dist: pandas<=2.3.3,>=1.1.3; extra == "apps"
86
87
  Provides-Extra: aug
87
88
  Requires-Dist: imgaug<1.0.0,>=0.4.0; extra == "aug"
88
89
  Requires-Dist: imagecorruptions<2.0.0,>=1.1.2; extra == "aug"
90
+ Requires-Dist: numpy<2.0.0,>=1.19; extra == "aug"
89
91
  Provides-Extra: docs
90
92
  Requires-Dist: sphinx==4.4.0; extra == "docs"
91
93
  Requires-Dist: jinja2==3.0.3; extra == "docs"
@@ -101,7 +103,7 @@ Requires-Dist: scikit-image<1.0.0,>=0.17.1; extra == "extras"
101
103
  Requires-Dist: matplotlib<4.0.0,>=3.3.2; extra == "extras"
102
104
  Requires-Dist: pascal-voc-writer<1.0.0,>=0.1.4; extra == "extras"
103
105
  Requires-Dist: scipy<2.0.0,>=1.8.0; extra == "extras"
104
- Requires-Dist: pandas<1.4.0,>=1.1.3; extra == "extras"
106
+ Requires-Dist: pandas<=2.3.3,>=1.1.3; extra == "extras"
105
107
  Requires-Dist: ruamel.yaml==0.17.21; extra == "extras"
106
108
  Provides-Extra: model-benchmark
107
109
  Requires-Dist: pycocotools; extra == "model-benchmark"
@@ -26,7 +26,7 @@ supervisely/api/annotation_api.py,sha256=TNOqVGE94FqDc7WDLBZiDY3aSIiyTQwn_bZv5_C
26
26
  supervisely/api/api.py,sha256=_ZiC1R2lu2eHXw_vBMUiylr-jQcU9-nZZvH5jJHVqoc,68828
27
27
  supervisely/api/app_api.py,sha256=OMgmZM7I5nmTn7P9J0F6fpNwWnFE-UO3wzlL1Rciqh4,79038
28
28
  supervisely/api/constants.py,sha256=WfqIcEpRnU4Mcfb6q0njeRs2VVSoTAJaIyrqBkBjP8I,253
29
- supervisely/api/dataset_api.py,sha256=BD6kG2lj826ajWjHxmiKEsyWb2Ov6CyTQlItzAxADbo,48955
29
+ supervisely/api/dataset_api.py,sha256=VxJH59G_EApGeFCw-Eu4RB2qowb5wMIj0eHusvxeGKM,51946
30
30
  supervisely/api/entities_collection_api.py,sha256=Be13HsfMFLmq9XpiOfQog0Y569kbUn52hXv6x5vX3Vg,22624
31
31
  supervisely/api/file_api.py,sha256=gNXNsikocSYRojoZrVmXIqXycqXm0e320piAwaLN6JI,92978
32
32
  supervisely/api/github_api.py,sha256=NIexNjEer9H5rf5sw2LEZd7C1WR-tK4t6IZzsgeAAwQ,623
@@ -94,7 +94,7 @@ supervisely/app/development/__init__.py,sha256=f2SpWBcCFPbSEBsJijH25eCAK8NcY2An5
94
94
  supervisely/app/development/development.py,sha256=Ij3tn7HmkHr2RRoYxlpK9xkTGnpFjZwy2kArn6ZxVnA,12505
95
95
  supervisely/app/development/sly-net.sh,sha256=M-RWQ7kygrJm88WGsOW0tEccO0fDgj_xGLI8Ifm-Ie4,1111
96
96
  supervisely/app/fastapi/__init__.py,sha256=ZT7hgv34YNg0CBWHcdvksqXHCcN23f1YdXp-JZd87Ek,482
97
- supervisely/app/fastapi/custom_static_files.py,sha256=5todaVIvUG9sAt6vu1IujJn8N7zTmFhVUfeCVbuXbvc,3391
97
+ supervisely/app/fastapi/custom_static_files.py,sha256=VwIozb4CFgJLkkC-hTHOHvYwPpWNSkjddPTaL-fagXw,3477
98
98
  supervisely/app/fastapi/dialog_window.html,sha256=ffaAxjK0TQRa7RrY5oA4uE6RzFuS0VnRG1pfoIzTqVM,1183
99
99
  supervisely/app/fastapi/index.html,sha256=dz_e-0RE5ZbOU0ToUaEHe1ROI6Tc3SPL-mHt1CpZTxQ,8793
100
100
  supervisely/app/fastapi/multi_user.py,sha256=m8Iy0ibTy85C7JkkovcRbDOirmIaz8BOOmAckDLGItk,3341
@@ -267,7 +267,7 @@ supervisely/app/widgets/empty/template.html,sha256=aDBKkin5aLuqByzNN517-rTYCGIg5
267
267
  supervisely/app/widgets/experiment_selector/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
268
268
  supervisely/app/widgets/experiment_selector/experiment_selector.py,sha256=n-5nolmzGUK2EQ_WIz62QcdJiwvGZPOLKv_liv1vejM,28566
269
269
  supervisely/app/widgets/fast_table/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
270
- supervisely/app/widgets/fast_table/fast_table.py,sha256=lfKt03PbF9nsAo25jxY_9S5HUtbuKkdaI2MpML8mUQs,57539
270
+ supervisely/app/widgets/fast_table/fast_table.py,sha256=48AwJ3RJMle8E-R6mjj5mB1lkJRtipt4NLA5cZdhdMw,60735
271
271
  supervisely/app/widgets/fast_table/script.js,sha256=V0l3hlRjejsVM6lSYDF6b79NZgegSdLKH0RBrhumnPU,22728
272
272
  supervisely/app/widgets/fast_table/style.css,sha256=DwVGIX4Hap_rG7D570pfyFRAUSMtfHUZEQYs9C6JrAY,16685
273
273
  supervisely/app/widgets/fast_table/template.html,sha256=L48n6lxnOTK8g7nvsdKm1-P4iEB-RR3NjBooYJpDtPM,2808
@@ -461,7 +461,7 @@ supervisely/app/widgets/select_dataset/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JC
461
461
  supervisely/app/widgets/select_dataset/select_dataset.py,sha256=S7zl83lUhquJ1U8GugiViEiGId6a5nVDfyIRRxh_LT4,10295
462
462
  supervisely/app/widgets/select_dataset/template.html,sha256=7O_ZgmRs0vOL8tng6QvYbI_0o6A4yMAPB2MlfzWHeHQ,984
463
463
  supervisely/app/widgets/select_dataset_tree/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
464
- supervisely/app/widgets/select_dataset_tree/select_dataset_tree.py,sha256=Dl2RnuUe0RLkZwGOXbcJO_9tcFmIId8dCKZkRpCqcRY,25577
464
+ supervisely/app/widgets/select_dataset_tree/select_dataset_tree.py,sha256=zFb7a70Zb7iWAtoM7zESCWcobQ2YEROJIJoj0CKpQ3k,25855
465
465
  supervisely/app/widgets/select_dataset_tree/template.html,sha256=_uvKCMP0nkpSl3FiTUxqy10JZw3q8-9hXCv22W3BDF0,38
466
466
  supervisely/app/widgets/select_item/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
467
467
  supervisely/app/widgets/select_item/select_item.py,sha256=dcB0UN46rn3nFQybgrGpLRfwB6xnPo-GGrv9rsMeCbA,3833
@@ -497,7 +497,7 @@ supervisely/app/widgets/switch/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5
497
497
  supervisely/app/widgets/switch/switch.py,sha256=k0oWbMjN9-ak1UcqBBEC3-yeJlEfiF4iwj1FocPClds,3143
498
498
  supervisely/app/widgets/switch/template.html,sha256=Hqo565LsnWlq5fK13KZ04aLNaqr1kbZDQX8JPJnR5e4,462
499
499
  supervisely/app/widgets/table/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
500
- supervisely/app/widgets/table/table.py,sha256=knuSWJM5sBHfePYDFD4MVuGUM8W3oQgBQzyfWLYhr3g,16750
500
+ supervisely/app/widgets/table/table.py,sha256=KG3C5yO27_-_rjVDYnTbwKea-E5i9QkxB6k5szxGNUs,18776
501
501
  supervisely/app/widgets/table/template.html,sha256=f895pzZzrc2dMN7ZFZ9iywQjxS2bWvSMIJxdqFbFL8k,778
502
502
  supervisely/app/widgets/tabs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
503
503
  supervisely/app/widgets/tabs/tabs.py,sha256=7G720sRoxxT_67zs1pCLgPN-opGSi4q3g24XYW65mk0,3121
@@ -905,10 +905,10 @@ supervisely/nn/benchmark/visualization/widgets/sidebar/sidebar.py,sha256=tKPURRS
905
905
  supervisely/nn/benchmark/visualization/widgets/table/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
906
906
  supervisely/nn/benchmark/visualization/widgets/table/table.py,sha256=atmDnF1Af6qLQBUjLhK18RMDKAYlxnsuVHMSEa5a-e8,4319
907
907
  supervisely/nn/inference/__init__.py,sha256=QFukX2ip-U7263aEPCF_UCFwj6EujbMnsgrXp5Bbt8I,1623
908
- supervisely/nn/inference/cache.py,sha256=byR1T9pr4ogKz4xOyOomRvxW4tuQqlZniTZy9HA7BY4,35595
909
- supervisely/nn/inference/inference.py,sha256=DBcROvcSdmauvEMFJcXNTkbltoPamX7ixh34a1pKTeQ,219669
910
- supervisely/nn/inference/inference_request.py,sha256=yuqEL4BWjC-aKze_raGScEQyhHe8loYb_eNhGPsf2-4,14870
911
- supervisely/nn/inference/session.py,sha256=f2Tyvj21oO9AKxqr6_yHZ81Ol-wXC-h5cweTHEoljkg,35796
908
+ supervisely/nn/inference/cache.py,sha256=Hkxvu70rrB-j7ztQ4TBOxQePAxiKS7Erdb2FmK7aetY,35795
909
+ supervisely/nn/inference/inference.py,sha256=c-jzwBuPiFdMfu78mSc6qw6SO59LZ9IwePyafEkiL04,230468
910
+ supervisely/nn/inference/inference_request.py,sha256=Hyf5R8gxaUCoxljNReIhbf5bK7ZMRtpV6C-flh8mgcQ,14660
911
+ supervisely/nn/inference/session.py,sha256=17abxb237JMftb12gPV-R07N6bUZwIaL4N39K-BupAQ,36357
912
912
  supervisely/nn/inference/uploader.py,sha256=Dn5MfMRq7tclEWpP0B9fJjTiQPBpwumfXxC8-lOYgnM,5659
913
913
  supervisely/nn/inference/video_inference.py,sha256=8Bshjr6rDyLay5Za8IB8Dr6FURMO2R_v7aELasO8pR4,5746
914
914
  supervisely/nn/inference/gui/__init__.py,sha256=wCxd-lF5Zhcwsis-wScDA8n1Gk_1O00PKgDviUZ3F1U,221
@@ -937,7 +937,7 @@ supervisely/nn/inference/predict_app/predict_app.py,sha256=jgpNLfbi5sQCiOYITHego
937
937
  supervisely/nn/inference/predict_app/gui/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
938
938
  supervisely/nn/inference/predict_app/gui/classes_selector.py,sha256=qjc0-bpV2L2vIUr-LoNSLKXhNNrNfliJpl44ybAgSyw,6369
939
939
  supervisely/nn/inference/predict_app/gui/gui.py,sha256=Zkp3M2aKZEKX6kZQbYiaSPiTEFM_Ul_xtuNozQ7dkMs,39526
940
- supervisely/nn/inference/predict_app/gui/input_selector.py,sha256=vEGsS-XMjV052UbJIpg-aFfGxIfyz5inHqr8dIg6N_E,12461
940
+ supervisely/nn/inference/predict_app/gui/input_selector.py,sha256=jZ3H9TP9flu1LrulS936I6jenHnC_a3a6iixjTL4srY,13781
941
941
  supervisely/nn/inference/predict_app/gui/model_selector.py,sha256=UvUErutEI8COCWA1WU5MMvMrju0k7W_65Sgp7URa9Qc,2369
942
942
  supervisely/nn/inference/predict_app/gui/output_selector.py,sha256=IEwR3CJUAh26eztfdPqfIyzjfyAHbV-fRTwmuwJE09g,6535
943
943
  supervisely/nn/inference/predict_app/gui/preview.py,sha256=UpOrXmjV32qDRdRKPO15BbRVIzhIEh906BkUtjjGaio,2871
@@ -1090,8 +1090,8 @@ supervisely/user/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,
1090
1090
  supervisely/user/user.py,sha256=4GSVIupPAxWjIxZmUtH3Dtms_vGV82-49kM_aaR2gBI,319
1091
1091
  supervisely/video/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
1092
1092
  supervisely/video/import_utils.py,sha256=b1Nl0gscNsV0iB9nWPeqt8GrkhOeuTZsN1p-d3gDUmE,544
1093
- supervisely/video/sampling.py,sha256=6w-FjpWbEq_u7zonnPEo0MhXN7RofhdgSZd27h45YMQ,20249
1094
- supervisely/video/video.py,sha256=nG1TE4MEvoh-_pfTTOx44dzqRq2VqLljmUnQ8r1czUY,20799
1093
+ supervisely/video/sampling.py,sha256=SA1HeS1yK0-w7oHrojuCQJIAO5UAJuO6zrdOgeE1Twc,20979
1094
+ supervisely/video/video.py,sha256=ufwyec2d9ekV3_CLy4VhOj3Ni0gcXIerIBHtC1KGzTQ,21400
1095
1095
  supervisely/video_annotation/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
1096
1096
  supervisely/video_annotation/constants.py,sha256=_gW9iMhVk1w_dUaFiaiyXn66mt13S6bkxC64xpjP-CU,529
1097
1097
  supervisely/video_annotation/frame.py,sha256=np21FqavJ3xW9VbLbohifDwZQtF5dWIsNSGVSjn-NnY,10574
@@ -1106,7 +1106,7 @@ supervisely/video_annotation/video_tag_collection.py,sha256=CijC6DqepwraFOIsEWjE
1106
1106
  supervisely/volume/__init__.py,sha256=EBZBY_5mzabXzMUQh5akusIGd16XnX9n8J0jIi_JmWw,446
1107
1107
  supervisely/volume/nrrd_encoder.py,sha256=1lqwwyqxEvctw1ysQ70x4xPSV1uy1g5YcH5CURwL7-c,4084
1108
1108
  supervisely/volume/nrrd_loader.py,sha256=_yqahKcqSRxunHZ5LtnUWIRA7UvIhPKOhAUwYijSGY4,9065
1109
- supervisely/volume/stl_converter.py,sha256=WIMQgHO_u4JT58QdcMXcb_euF1BFhM7D52IVX_0QTxE,6285
1109
+ supervisely/volume/stl_converter.py,sha256=O50-VRQM26-mj68YsmkB1lMHJ_lh-RnP09TZJQ5de8M,6336
1110
1110
  supervisely/volume/volume.py,sha256=jDu_p1zPQxCojjtdJlVVTxfuKgVCYmMSY13Xz99k7pA,30765
1111
1111
  supervisely/volume_annotation/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
1112
1112
  supervisely/volume_annotation/constants.py,sha256=BdFIh56fy7vzLIjt0gH8xP01EIU-qgQIwbSHVUcABCU,569
@@ -1129,9 +1129,9 @@ supervisely/worker_proto/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZ
1129
1129
  supervisely/worker_proto/worker_api_pb2.py,sha256=VQfi5JRBHs2pFCK1snec3JECgGnua3Xjqw_-b3aFxuM,59142
1130
1130
  supervisely/worker_proto/worker_api_pb2_grpc.py,sha256=3BwQXOaP9qpdi0Dt9EKG--Lm8KGN0C5AgmUfRv77_Jk,28940
1131
1131
  supervisely_lib/__init__.py,sha256=yRwzEQmVwSd6lUQoAUdBngKEOlnoQ6hA9ZcoZGJRNC4,331
1132
- supervisely-6.73.459.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
1133
- supervisely-6.73.459.dist-info/METADATA,sha256=fT3Xr_EEuWP4jf0YjHbrOqHWfA7XvszQuG4gNiEJzVA,35520
1134
- supervisely-6.73.459.dist-info/WHEEL,sha256=iAkIy5fosb7FzIOwONchHf19Qu7_1wCWyFNR5gu9nU0,91
1135
- supervisely-6.73.459.dist-info/entry_points.txt,sha256=U96-5Hxrp2ApRjnCoUiUhWMqijqh8zLR03sEhWtAcms,102
1136
- supervisely-6.73.459.dist-info/top_level.txt,sha256=kcFVwb7SXtfqZifrZaSE3owHExX4gcNYe7Q2uoby084,28
1137
- supervisely-6.73.459.dist-info/RECORD,,
1132
+ supervisely-6.73.468.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
1133
+ supervisely-6.73.468.dist-info/METADATA,sha256=k0bagp1RvQeaEbbthEI1t_uRYQMr7mmxB7Qn-6q-E-c,35604
1134
+ supervisely-6.73.468.dist-info/WHEEL,sha256=iAkIy5fosb7FzIOwONchHf19Qu7_1wCWyFNR5gu9nU0,91
1135
+ supervisely-6.73.468.dist-info/entry_points.txt,sha256=U96-5Hxrp2ApRjnCoUiUhWMqijqh8zLR03sEhWtAcms,102
1136
+ supervisely-6.73.468.dist-info/top_level.txt,sha256=kcFVwb7SXtfqZifrZaSE3owHExX4gcNYe7Q2uoby084,28
1137
+ supervisely-6.73.468.dist-info/RECORD,,