dtlpy 1.115.44__py3-none-any.whl → 1.116.6__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.
- dtlpy/__init__.py +491 -491
- dtlpy/__version__.py +1 -1
- dtlpy/assets/__init__.py +26 -26
- dtlpy/assets/code_server/config.yaml +2 -2
- dtlpy/assets/code_server/installation.sh +24 -24
- dtlpy/assets/code_server/launch.json +13 -13
- dtlpy/assets/code_server/settings.json +2 -2
- dtlpy/assets/main.py +53 -53
- dtlpy/assets/main_partial.py +18 -18
- dtlpy/assets/mock.json +11 -11
- dtlpy/assets/model_adapter.py +83 -83
- dtlpy/assets/package.json +61 -61
- dtlpy/assets/package_catalog.json +29 -29
- dtlpy/assets/package_gitignore +307 -307
- dtlpy/assets/service_runners/__init__.py +33 -33
- dtlpy/assets/service_runners/converter.py +96 -96
- dtlpy/assets/service_runners/multi_method.py +49 -49
- dtlpy/assets/service_runners/multi_method_annotation.py +54 -54
- dtlpy/assets/service_runners/multi_method_dataset.py +55 -55
- dtlpy/assets/service_runners/multi_method_item.py +52 -52
- dtlpy/assets/service_runners/multi_method_json.py +52 -52
- dtlpy/assets/service_runners/single_method.py +37 -37
- dtlpy/assets/service_runners/single_method_annotation.py +43 -43
- dtlpy/assets/service_runners/single_method_dataset.py +43 -43
- dtlpy/assets/service_runners/single_method_item.py +41 -41
- dtlpy/assets/service_runners/single_method_json.py +42 -42
- dtlpy/assets/service_runners/single_method_multi_input.py +45 -45
- dtlpy/assets/voc_annotation_template.xml +23 -23
- dtlpy/caches/base_cache.py +32 -32
- dtlpy/caches/cache.py +473 -473
- dtlpy/caches/dl_cache.py +201 -201
- dtlpy/caches/filesystem_cache.py +89 -89
- dtlpy/caches/redis_cache.py +84 -84
- dtlpy/dlp/__init__.py +20 -20
- dtlpy/dlp/cli_utilities.py +367 -367
- dtlpy/dlp/command_executor.py +764 -764
- dtlpy/dlp/dlp +1 -1
- dtlpy/dlp/dlp.bat +1 -1
- dtlpy/dlp/dlp.py +128 -128
- dtlpy/dlp/parser.py +651 -651
- dtlpy/entities/__init__.py +83 -83
- dtlpy/entities/analytic.py +347 -347
- dtlpy/entities/annotation.py +1879 -1879
- dtlpy/entities/annotation_collection.py +699 -699
- dtlpy/entities/annotation_definitions/__init__.py +20 -20
- dtlpy/entities/annotation_definitions/base_annotation_definition.py +100 -100
- dtlpy/entities/annotation_definitions/box.py +195 -195
- dtlpy/entities/annotation_definitions/classification.py +67 -67
- dtlpy/entities/annotation_definitions/comparison.py +72 -72
- dtlpy/entities/annotation_definitions/cube.py +204 -204
- dtlpy/entities/annotation_definitions/cube_3d.py +149 -149
- dtlpy/entities/annotation_definitions/description.py +32 -32
- dtlpy/entities/annotation_definitions/ellipse.py +124 -124
- dtlpy/entities/annotation_definitions/free_text.py +62 -62
- dtlpy/entities/annotation_definitions/gis.py +69 -69
- dtlpy/entities/annotation_definitions/note.py +139 -139
- dtlpy/entities/annotation_definitions/point.py +117 -117
- dtlpy/entities/annotation_definitions/polygon.py +182 -182
- dtlpy/entities/annotation_definitions/polyline.py +111 -111
- dtlpy/entities/annotation_definitions/pose.py +92 -92
- dtlpy/entities/annotation_definitions/ref_image.py +86 -86
- dtlpy/entities/annotation_definitions/segmentation.py +240 -240
- dtlpy/entities/annotation_definitions/subtitle.py +34 -34
- dtlpy/entities/annotation_definitions/text.py +85 -85
- dtlpy/entities/annotation_definitions/undefined_annotation.py +74 -74
- dtlpy/entities/app.py +220 -220
- dtlpy/entities/app_module.py +107 -107
- dtlpy/entities/artifact.py +174 -174
- dtlpy/entities/assignment.py +399 -399
- dtlpy/entities/base_entity.py +214 -214
- dtlpy/entities/bot.py +113 -113
- dtlpy/entities/codebase.py +292 -292
- dtlpy/entities/collection.py +38 -38
- dtlpy/entities/command.py +169 -169
- dtlpy/entities/compute.py +449 -449
- dtlpy/entities/dataset.py +1299 -1299
- dtlpy/entities/directory_tree.py +44 -44
- dtlpy/entities/dpk.py +470 -470
- dtlpy/entities/driver.py +235 -235
- dtlpy/entities/execution.py +397 -397
- dtlpy/entities/feature.py +124 -124
- dtlpy/entities/feature_set.py +145 -145
- dtlpy/entities/filters.py +798 -798
- dtlpy/entities/gis_item.py +107 -107
- dtlpy/entities/integration.py +184 -184
- dtlpy/entities/item.py +959 -959
- dtlpy/entities/label.py +123 -123
- dtlpy/entities/links.py +85 -85
- dtlpy/entities/message.py +175 -175
- dtlpy/entities/model.py +684 -684
- dtlpy/entities/node.py +1005 -1005
- dtlpy/entities/ontology.py +810 -803
- dtlpy/entities/organization.py +287 -287
- dtlpy/entities/package.py +657 -657
- dtlpy/entities/package_defaults.py +5 -5
- dtlpy/entities/package_function.py +185 -185
- dtlpy/entities/package_module.py +113 -113
- dtlpy/entities/package_slot.py +118 -118
- dtlpy/entities/paged_entities.py +299 -299
- dtlpy/entities/pipeline.py +624 -624
- dtlpy/entities/pipeline_execution.py +279 -279
- dtlpy/entities/project.py +394 -394
- dtlpy/entities/prompt_item.py +505 -505
- dtlpy/entities/recipe.py +301 -301
- dtlpy/entities/reflect_dict.py +102 -102
- dtlpy/entities/resource_execution.py +138 -138
- dtlpy/entities/service.py +963 -963
- dtlpy/entities/service_driver.py +117 -117
- dtlpy/entities/setting.py +294 -294
- dtlpy/entities/task.py +495 -495
- dtlpy/entities/time_series.py +143 -143
- dtlpy/entities/trigger.py +426 -426
- dtlpy/entities/user.py +118 -118
- dtlpy/entities/webhook.py +124 -124
- dtlpy/examples/__init__.py +19 -19
- dtlpy/examples/add_labels.py +135 -135
- dtlpy/examples/add_metadata_to_item.py +21 -21
- dtlpy/examples/annotate_items_using_model.py +65 -65
- dtlpy/examples/annotate_video_using_model_and_tracker.py +75 -75
- dtlpy/examples/annotations_convert_to_voc.py +9 -9
- dtlpy/examples/annotations_convert_to_yolo.py +9 -9
- dtlpy/examples/convert_annotation_types.py +51 -51
- dtlpy/examples/converter.py +143 -143
- dtlpy/examples/copy_annotations.py +22 -22
- dtlpy/examples/copy_folder.py +31 -31
- dtlpy/examples/create_annotations.py +51 -51
- dtlpy/examples/create_video_annotations.py +83 -83
- dtlpy/examples/delete_annotations.py +26 -26
- dtlpy/examples/filters.py +113 -113
- dtlpy/examples/move_item.py +23 -23
- dtlpy/examples/play_video_annotation.py +13 -13
- dtlpy/examples/show_item_and_mask.py +53 -53
- dtlpy/examples/triggers.py +49 -49
- dtlpy/examples/upload_batch_of_items.py +20 -20
- dtlpy/examples/upload_items_and_custom_format_annotations.py +55 -55
- dtlpy/examples/upload_items_with_modalities.py +43 -43
- dtlpy/examples/upload_segmentation_annotations_from_mask_image.py +44 -44
- dtlpy/examples/upload_yolo_format_annotations.py +70 -70
- dtlpy/exceptions.py +125 -125
- dtlpy/miscellaneous/__init__.py +20 -20
- dtlpy/miscellaneous/dict_differ.py +95 -95
- dtlpy/miscellaneous/git_utils.py +217 -217
- dtlpy/miscellaneous/json_utils.py +14 -14
- dtlpy/miscellaneous/list_print.py +105 -105
- dtlpy/miscellaneous/zipping.py +130 -130
- dtlpy/ml/__init__.py +20 -20
- dtlpy/ml/base_feature_extractor_adapter.py +27 -27
- dtlpy/ml/base_model_adapter.py +1257 -1230
- dtlpy/ml/metrics.py +461 -461
- dtlpy/ml/predictions_utils.py +274 -274
- dtlpy/ml/summary_writer.py +57 -57
- dtlpy/ml/train_utils.py +60 -60
- dtlpy/new_instance.py +252 -252
- dtlpy/repositories/__init__.py +56 -56
- dtlpy/repositories/analytics.py +85 -85
- dtlpy/repositories/annotations.py +916 -916
- dtlpy/repositories/apps.py +383 -383
- dtlpy/repositories/artifacts.py +452 -452
- dtlpy/repositories/assignments.py +599 -599
- dtlpy/repositories/bots.py +213 -213
- dtlpy/repositories/codebases.py +559 -559
- dtlpy/repositories/collections.py +332 -332
- dtlpy/repositories/commands.py +152 -152
- dtlpy/repositories/compositions.py +61 -61
- dtlpy/repositories/computes.py +439 -439
- dtlpy/repositories/datasets.py +1504 -1504
- dtlpy/repositories/downloader.py +976 -923
- dtlpy/repositories/dpks.py +433 -433
- dtlpy/repositories/drivers.py +482 -482
- dtlpy/repositories/executions.py +815 -815
- dtlpy/repositories/feature_sets.py +226 -226
- dtlpy/repositories/features.py +255 -255
- dtlpy/repositories/integrations.py +484 -484
- dtlpy/repositories/items.py +912 -912
- dtlpy/repositories/messages.py +94 -94
- dtlpy/repositories/models.py +1000 -1000
- dtlpy/repositories/nodes.py +80 -80
- dtlpy/repositories/ontologies.py +511 -511
- dtlpy/repositories/organizations.py +525 -525
- dtlpy/repositories/packages.py +1941 -1941
- dtlpy/repositories/pipeline_executions.py +451 -451
- dtlpy/repositories/pipelines.py +640 -640
- dtlpy/repositories/projects.py +539 -539
- dtlpy/repositories/recipes.py +419 -399
- dtlpy/repositories/resource_executions.py +137 -137
- dtlpy/repositories/schema.py +120 -120
- dtlpy/repositories/service_drivers.py +213 -213
- dtlpy/repositories/services.py +1704 -1704
- dtlpy/repositories/settings.py +339 -339
- dtlpy/repositories/tasks.py +1477 -1477
- dtlpy/repositories/times_series.py +278 -278
- dtlpy/repositories/triggers.py +536 -536
- dtlpy/repositories/upload_element.py +257 -257
- dtlpy/repositories/uploader.py +661 -661
- dtlpy/repositories/webhooks.py +249 -249
- dtlpy/services/__init__.py +22 -22
- dtlpy/services/aihttp_retry.py +131 -131
- dtlpy/services/api_client.py +1785 -1785
- dtlpy/services/api_reference.py +40 -40
- dtlpy/services/async_utils.py +133 -133
- dtlpy/services/calls_counter.py +44 -44
- dtlpy/services/check_sdk.py +68 -68
- dtlpy/services/cookie.py +115 -115
- dtlpy/services/create_logger.py +156 -156
- dtlpy/services/events.py +84 -84
- dtlpy/services/logins.py +235 -235
- dtlpy/services/reporter.py +256 -256
- dtlpy/services/service_defaults.py +91 -91
- dtlpy/utilities/__init__.py +20 -20
- dtlpy/utilities/annotations/__init__.py +16 -16
- dtlpy/utilities/annotations/annotation_converters.py +269 -269
- dtlpy/utilities/base_package_runner.py +285 -264
- dtlpy/utilities/converter.py +1650 -1650
- dtlpy/utilities/dataset_generators/__init__.py +1 -1
- dtlpy/utilities/dataset_generators/dataset_generator.py +670 -670
- dtlpy/utilities/dataset_generators/dataset_generator_tensorflow.py +23 -23
- dtlpy/utilities/dataset_generators/dataset_generator_torch.py +21 -21
- dtlpy/utilities/local_development/__init__.py +1 -1
- dtlpy/utilities/local_development/local_session.py +179 -179
- dtlpy/utilities/reports/__init__.py +2 -2
- dtlpy/utilities/reports/figures.py +343 -343
- dtlpy/utilities/reports/report.py +71 -71
- dtlpy/utilities/videos/__init__.py +17 -17
- dtlpy/utilities/videos/video_player.py +598 -598
- dtlpy/utilities/videos/videos.py +470 -470
- {dtlpy-1.115.44.data → dtlpy-1.116.6.data}/scripts/dlp +1 -1
- dtlpy-1.116.6.data/scripts/dlp.bat +2 -0
- {dtlpy-1.115.44.data → dtlpy-1.116.6.data}/scripts/dlp.py +128 -128
- {dtlpy-1.115.44.dist-info → dtlpy-1.116.6.dist-info}/METADATA +186 -186
- dtlpy-1.116.6.dist-info/RECORD +239 -0
- {dtlpy-1.115.44.dist-info → dtlpy-1.116.6.dist-info}/WHEEL +1 -1
- {dtlpy-1.115.44.dist-info → dtlpy-1.116.6.dist-info}/licenses/LICENSE +200 -200
- tests/features/environment.py +551 -551
- dtlpy/assets/__pycache__/__init__.cpython-310.pyc +0 -0
- dtlpy-1.115.44.data/scripts/dlp.bat +0 -2
- dtlpy-1.115.44.dist-info/RECORD +0 -240
- {dtlpy-1.115.44.dist-info → dtlpy-1.116.6.dist-info}/entry_points.txt +0 -0
- {dtlpy-1.115.44.dist-info → dtlpy-1.116.6.dist-info}/top_level.txt +0 -0
|
@@ -1,67 +1,67 @@
|
|
|
1
|
-
from . import BaseAnnotationDefinition
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
class Classification(BaseAnnotationDefinition):
|
|
5
|
-
"""
|
|
6
|
-
Classification annotation object
|
|
7
|
-
"""
|
|
8
|
-
type = "class"
|
|
9
|
-
|
|
10
|
-
def __init__(self, label, attributes=None, description=None):
|
|
11
|
-
super().__init__(description=description, attributes=attributes)
|
|
12
|
-
self.label = label
|
|
13
|
-
|
|
14
|
-
@property
|
|
15
|
-
def x(self):
|
|
16
|
-
return 0
|
|
17
|
-
|
|
18
|
-
@property
|
|
19
|
-
def y(self):
|
|
20
|
-
return 0
|
|
21
|
-
|
|
22
|
-
@property
|
|
23
|
-
def geo(self):
|
|
24
|
-
return list()
|
|
25
|
-
|
|
26
|
-
@property
|
|
27
|
-
def left(self):
|
|
28
|
-
return 0
|
|
29
|
-
|
|
30
|
-
@property
|
|
31
|
-
def top(self):
|
|
32
|
-
return 0
|
|
33
|
-
|
|
34
|
-
@property
|
|
35
|
-
def right(self):
|
|
36
|
-
return 0
|
|
37
|
-
|
|
38
|
-
@property
|
|
39
|
-
def bottom(self):
|
|
40
|
-
return 0
|
|
41
|
-
|
|
42
|
-
def show(self, image, thickness, with_text, height, width, annotation_format, color, alpha=1):
|
|
43
|
-
"""
|
|
44
|
-
Show annotation as ndarray
|
|
45
|
-
:param image: empty or image to draw on
|
|
46
|
-
:param thickness:
|
|
47
|
-
:param with_text: not required
|
|
48
|
-
:param height: item height
|
|
49
|
-
:param width: item width
|
|
50
|
-
:param annotation_format: options: list(dl.ViewAnnotationOptions)
|
|
51
|
-
:param color: color
|
|
52
|
-
:param alpha: opacity value [0 1], default 1
|
|
53
|
-
:return: ndarray
|
|
54
|
-
"""
|
|
55
|
-
if with_text:
|
|
56
|
-
image = self.add_text_to_image(image=image, annotation=self)
|
|
57
|
-
return image
|
|
58
|
-
|
|
59
|
-
def to_coordinates(self, color):
|
|
60
|
-
return list()
|
|
61
|
-
|
|
62
|
-
@classmethod
|
|
63
|
-
def from_json(cls, _json):
|
|
64
|
-
return cls(
|
|
65
|
-
label=_json["label"],
|
|
66
|
-
attributes=_json.get("attributes", None),
|
|
67
|
-
)
|
|
1
|
+
from . import BaseAnnotationDefinition
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class Classification(BaseAnnotationDefinition):
|
|
5
|
+
"""
|
|
6
|
+
Classification annotation object
|
|
7
|
+
"""
|
|
8
|
+
type = "class"
|
|
9
|
+
|
|
10
|
+
def __init__(self, label, attributes=None, description=None):
|
|
11
|
+
super().__init__(description=description, attributes=attributes)
|
|
12
|
+
self.label = label
|
|
13
|
+
|
|
14
|
+
@property
|
|
15
|
+
def x(self):
|
|
16
|
+
return 0
|
|
17
|
+
|
|
18
|
+
@property
|
|
19
|
+
def y(self):
|
|
20
|
+
return 0
|
|
21
|
+
|
|
22
|
+
@property
|
|
23
|
+
def geo(self):
|
|
24
|
+
return list()
|
|
25
|
+
|
|
26
|
+
@property
|
|
27
|
+
def left(self):
|
|
28
|
+
return 0
|
|
29
|
+
|
|
30
|
+
@property
|
|
31
|
+
def top(self):
|
|
32
|
+
return 0
|
|
33
|
+
|
|
34
|
+
@property
|
|
35
|
+
def right(self):
|
|
36
|
+
return 0
|
|
37
|
+
|
|
38
|
+
@property
|
|
39
|
+
def bottom(self):
|
|
40
|
+
return 0
|
|
41
|
+
|
|
42
|
+
def show(self, image, thickness, with_text, height, width, annotation_format, color, alpha=1):
|
|
43
|
+
"""
|
|
44
|
+
Show annotation as ndarray
|
|
45
|
+
:param image: empty or image to draw on
|
|
46
|
+
:param thickness:
|
|
47
|
+
:param with_text: not required
|
|
48
|
+
:param height: item height
|
|
49
|
+
:param width: item width
|
|
50
|
+
:param annotation_format: options: list(dl.ViewAnnotationOptions)
|
|
51
|
+
:param color: color
|
|
52
|
+
:param alpha: opacity value [0 1], default 1
|
|
53
|
+
:return: ndarray
|
|
54
|
+
"""
|
|
55
|
+
if with_text:
|
|
56
|
+
image = self.add_text_to_image(image=image, annotation=self)
|
|
57
|
+
return image
|
|
58
|
+
|
|
59
|
+
def to_coordinates(self, color):
|
|
60
|
+
return list()
|
|
61
|
+
|
|
62
|
+
@classmethod
|
|
63
|
+
def from_json(cls, _json):
|
|
64
|
+
return cls(
|
|
65
|
+
label=_json["label"],
|
|
66
|
+
attributes=_json.get("attributes", None),
|
|
67
|
+
)
|
|
@@ -1,72 +1,72 @@
|
|
|
1
|
-
from . import BaseAnnotationDefinition
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
class Comparison(BaseAnnotationDefinition):
|
|
5
|
-
"""
|
|
6
|
-
Comparison annotation object
|
|
7
|
-
"""
|
|
8
|
-
type = "comparison"
|
|
9
|
-
|
|
10
|
-
def __init__(self, coordinates, label, attributes=None, description=None):
|
|
11
|
-
super().__init__(description=description, attributes=attributes)
|
|
12
|
-
self.label = label
|
|
13
|
-
self.coordinates = coordinates
|
|
14
|
-
|
|
15
|
-
@property
|
|
16
|
-
def geo(self):
|
|
17
|
-
return 0
|
|
18
|
-
|
|
19
|
-
@property
|
|
20
|
-
def left(self):
|
|
21
|
-
return 0
|
|
22
|
-
|
|
23
|
-
@property
|
|
24
|
-
def top(self):
|
|
25
|
-
return 0
|
|
26
|
-
|
|
27
|
-
@property
|
|
28
|
-
def right(self):
|
|
29
|
-
return 0
|
|
30
|
-
|
|
31
|
-
@property
|
|
32
|
-
def bottom(self):
|
|
33
|
-
return 0
|
|
34
|
-
|
|
35
|
-
@property
|
|
36
|
-
def z(self):
|
|
37
|
-
return 0
|
|
38
|
-
|
|
39
|
-
def show(self, image, thickness, with_text, height, width, annotation_format, color, alpha=1):
|
|
40
|
-
"""
|
|
41
|
-
Show annotation as ndarray
|
|
42
|
-
:param image: empty or image to draw on
|
|
43
|
-
:param thickness:
|
|
44
|
-
:param with_text: not required
|
|
45
|
-
:param height: item height
|
|
46
|
-
:param width: item width
|
|
47
|
-
:param annotation_format: options: list(dl.ViewAnnotationOptions)
|
|
48
|
-
:param color: color
|
|
49
|
-
:param alpha: opacity value [0 1], default 1
|
|
50
|
-
:return: ndarray
|
|
51
|
-
"""
|
|
52
|
-
if with_text:
|
|
53
|
-
image = self.add_text_to_image(image=image, annotation=self)
|
|
54
|
-
return image
|
|
55
|
-
|
|
56
|
-
def to_coordinates(self, color):
|
|
57
|
-
return self.coordinates
|
|
58
|
-
|
|
59
|
-
@classmethod
|
|
60
|
-
def from_json(cls, _json):
|
|
61
|
-
if "coordinates" in _json:
|
|
62
|
-
coordinates = _json["coordinates"]
|
|
63
|
-
elif "data" in _json:
|
|
64
|
-
coordinates = _json["data"]
|
|
65
|
-
else:
|
|
66
|
-
coordinates = dict()
|
|
67
|
-
|
|
68
|
-
return cls(
|
|
69
|
-
coordinates=coordinates,
|
|
70
|
-
label=_json.get("label", None),
|
|
71
|
-
attributes=_json.get("attributes", None)
|
|
72
|
-
)
|
|
1
|
+
from . import BaseAnnotationDefinition
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class Comparison(BaseAnnotationDefinition):
|
|
5
|
+
"""
|
|
6
|
+
Comparison annotation object
|
|
7
|
+
"""
|
|
8
|
+
type = "comparison"
|
|
9
|
+
|
|
10
|
+
def __init__(self, coordinates, label, attributes=None, description=None):
|
|
11
|
+
super().__init__(description=description, attributes=attributes)
|
|
12
|
+
self.label = label
|
|
13
|
+
self.coordinates = coordinates
|
|
14
|
+
|
|
15
|
+
@property
|
|
16
|
+
def geo(self):
|
|
17
|
+
return 0
|
|
18
|
+
|
|
19
|
+
@property
|
|
20
|
+
def left(self):
|
|
21
|
+
return 0
|
|
22
|
+
|
|
23
|
+
@property
|
|
24
|
+
def top(self):
|
|
25
|
+
return 0
|
|
26
|
+
|
|
27
|
+
@property
|
|
28
|
+
def right(self):
|
|
29
|
+
return 0
|
|
30
|
+
|
|
31
|
+
@property
|
|
32
|
+
def bottom(self):
|
|
33
|
+
return 0
|
|
34
|
+
|
|
35
|
+
@property
|
|
36
|
+
def z(self):
|
|
37
|
+
return 0
|
|
38
|
+
|
|
39
|
+
def show(self, image, thickness, with_text, height, width, annotation_format, color, alpha=1):
|
|
40
|
+
"""
|
|
41
|
+
Show annotation as ndarray
|
|
42
|
+
:param image: empty or image to draw on
|
|
43
|
+
:param thickness:
|
|
44
|
+
:param with_text: not required
|
|
45
|
+
:param height: item height
|
|
46
|
+
:param width: item width
|
|
47
|
+
:param annotation_format: options: list(dl.ViewAnnotationOptions)
|
|
48
|
+
:param color: color
|
|
49
|
+
:param alpha: opacity value [0 1], default 1
|
|
50
|
+
:return: ndarray
|
|
51
|
+
"""
|
|
52
|
+
if with_text:
|
|
53
|
+
image = self.add_text_to_image(image=image, annotation=self)
|
|
54
|
+
return image
|
|
55
|
+
|
|
56
|
+
def to_coordinates(self, color):
|
|
57
|
+
return self.coordinates
|
|
58
|
+
|
|
59
|
+
@classmethod
|
|
60
|
+
def from_json(cls, _json):
|
|
61
|
+
if "coordinates" in _json:
|
|
62
|
+
coordinates = _json["coordinates"]
|
|
63
|
+
elif "data" in _json:
|
|
64
|
+
coordinates = _json["data"]
|
|
65
|
+
else:
|
|
66
|
+
coordinates = dict()
|
|
67
|
+
|
|
68
|
+
return cls(
|
|
69
|
+
coordinates=coordinates,
|
|
70
|
+
label=_json.get("label", None),
|
|
71
|
+
attributes=_json.get("attributes", None)
|
|
72
|
+
)
|