Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
71 commits
Select commit Hold shift + click to select a range
57fe082
client initial changes
VaghinakDev May 10, 2022
c1be610
Merge branch 'friday' of https://github.com/superannotateai/superanno…
VaghinakDev May 23, 2022
0a29bff
SAClient initial changes
VaghinakDev May 24, 2022
a2f19f3
fix import issue
VaghinakDev May 24, 2022
34f76a1
Update by comments
VaghinakDev May 25, 2022
1d8bb20
Merge pull request #440 from superannotateai/sa_client
VaghinakDev May 26, 2022
2631f62
adding assign items and un_assign items functionality
VahagnTKA May 30, 2022
1e24db4
Added mixpanel, changed docs
VaghinakDev May 30, 2022
b427b21
Merge pull request #441 from superannotateai/1094_mixp
VaghinakDev Jun 1, 2022
5d73eb9
moved verificatioon logic inside the usecases isValid, changed 'Respo…
VahagnTKA Jun 1, 2022
610e470
conforming to general validation logic. Added 'Skippable Validation E…
VahagnTKA Jun 2, 2022
49702a6
Merge branch 'friday' into assign_items
VaghinakDev Jun 2, 2022
229a4b2
Added mixpanel, changed docs
VaghinakDev May 30, 2022
5405738
Merge remote-tracking branch 'origin/assign_items' into client_fix
VaghinakDev Jun 2, 2022
e4e11eb
tod
VaghinakDev Jun 2, 2022
98c3679
Merge pull request #443 from superannotateai/client_fix
TumanyanV Jun 2, 2022
f34e46f
no more Skippable exceptions, deprecation messages and more
VahagnTKA Jun 2, 2022
3e025f2
Merge pull request #442 from superannotateai/assign_items
VaghinakDev Jun 3, 2022
525f251
Session fix
VaghinakDev Jun 3, 2022
f31505d
Merge pull request #444 from superannotateai/session_fix
VaghinakDev Jun 6, 2022
9a2e13b
change assets provider url
VaghinakDev Jun 6, 2022
08b286a
Enums
VaghinakDev Jun 2, 2022
3fe5760
fixed naming and folder name / project name issue
VahagnTKA Jun 6, 2022
83d7e89
fixed docstrings
VahagnTKA Jun 6, 2022
065b60e
Merge pull request #445 from superannotateai/assign_items_fix
TumanyanV Jun 6, 2022
29912ad
Update download annotations
VaghinakDev Jun 7, 2022
25e1421
Merge branch 'friday' into 1100_enums
VaghinakDev Jun 8, 2022
e3c3234
Merge pull request #446 from superannotateai/1100_enums
VaghinakDev Jun 8, 2022
40f5f58
class BaseInterfaceFacade:
VaghinakDev Jun 8, 2022
0eb724d
Docstring fix
VaghinakDev Jun 8, 2022
a36b443
Interface fix
VaghinakDev Jun 9, 2022
f3c3686
Mixpanel fix
VaghinakDev Jun 9, 2022
2ea55d0
fix set_statuses
VahagnTKA Jun 16, 2022
1bd18ff
fixed chunk size and search by chunks for copy_items and set_annotati…
VahagnTKA Jun 16, 2022
0ccaa5d
Merge pull request #448 from superannotateai/fix_set_annotation_statuses
TumanyanV Jun 17, 2022
6c7f51e
Merge pull request #447 from superannotateai/1107_set_annotation_stat…
VaghinakDev Jun 20, 2022
7f7cab8
log fixes
VahagnTKA Jun 20, 2022
f48a5d1
Docstring fix
VaghinakDev Jun 8, 2022
38004b5
Merge branch '1027_fix_logs_assign_items' of https://github.com/super…
VaghinakDev Jun 20, 2022
163b805
added ServiceResponse serialization
VaghinakDev Jun 20, 2022
8a9ab3c
Update service_types.py
VaghinakDev Jun 20, 2022
1cf9bbf
Update service_types.py
VaghinakDev Jun 20, 2022
69b9fae
in progress changes
VahagnTKA Jun 21, 2022
952aeb3
added 'not' and returning reason if it exists and error does not exis…
VahagnTKA Jun 21, 2022
ca3cd91
Merge pull request #450 from superannotateai/1027_service_update
TumanyanV Jun 21, 2022
b453be3
using ServiceType, fixing some stuff
VahagnTKA Jun 21, 2022
cf312b3
Merge branch 'friday' into 1027_fix_logs_assign_items
VaghinakDev Jun 21, 2022
8b0b438
Update items.py
VaghinakDev Jun 21, 2022
764e81f
Merge pull request #449 from superannotateai/1027_fix_logs_assign_items
TumanyanV Jun 21, 2022
3c85504
Update version.py
VaghinakDev Jun 21, 2022
1c74f5c
initial commit
VaghinakDev Jun 22, 2022
143d30f
added subset to query function
VaghinakDev Jun 22, 2022
d65ff10
finalizing this delete items
VahagnTKA Jun 22, 2022
b77a503
fixing wrong capitalization
VahagnTKA Jun 22, 2022
96a17f2
fixing wrong capitalization
VahagnTKA Jun 22, 2022
74febc8
fixing wrong capitalization
VahagnTKA Jun 22, 2022
4e25c50
fixing deprecation warning
VahagnTKA Jun 22, 2022
a8c90d2
Merge pull request #452 from superannotateai/1119_get_subsets
VaghinakDev Jun 23, 2022
307784e
Merge pull request #453 from superannotateai/1120_query_subsets
VaghinakDev Jun 23, 2022
1cef3a0
Merge branch 'friday' into 1028_delete_items
VaghinakDev Jun 23, 2022
bc182db
Merge pull request #454 from superannotateai/1028_delete_items
VaghinakDev Jun 23, 2022
fd1e8c4
classIds, and frame picking logic
VahagnTKA Jun 23, 2022
1d9fd71
Merge pull request #456 from superannotateai/1148_1111_class_id_and_i…
VaghinakDev Jun 23, 2022
f5a7187
Fix typo
VaghinakDev Jun 23, 2022
3bcab0c
Merge branch 'friday' of https://github.com/superannotateai/superanno…
VaghinakDev Jun 23, 2022
76f9dd8
Update version.py
VaghinakDev Jun 23, 2022
e2d1881
Updated the docs
VaghinakDev Jun 23, 2022
b8171ff
Merge branch 'friday' into doc_updates
VaghinakDev Jun 28, 2022
5c8e2ed
Merge pull request #455 from superannotateai/doc_updates
VaghinakDev Jun 28, 2022
e0a28b5
Subsets updates
VaghinakDev Jun 28, 2022
93ddb2f
Merge remote-tracking branch 'origin/develop' into friday
VaghinakDev Jun 28, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ repos:
- '--application-directories'
- app
- repo: 'https://github.com/python/black'
rev: 19.10b0
rev: 22.3.0
hooks:
- id: black
name: Code Formatter (black)
Expand Down
4 changes: 3 additions & 1 deletion docs/source/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,9 @@ SuperAnnotate Python SDK allows access to the platform without web browser:

.. code-block:: python

import superannotate as sa
from superannotate import SAClient

sa = SAClient()

sa.create_project("Example Project 1", "example", "Vector")

Expand Down
151 changes: 78 additions & 73 deletions docs/source/superannotate.sdk.rst
Original file line number Diff line number Diff line change
Expand Up @@ -8,73 +8,80 @@ API Reference
Remote functions
----------------

Initialization and authentication
Instantiation and authentication
_________________________________

.. autofunction:: superannotate.init
.. autoclass:: superannotate.SAClient


.. _ref_projects:

Projects
________

.. _ref_search_projects:
.. autofunction:: superannotate.search_projects
.. autofunction:: superannotate.create_project
.. autofunction:: superannotate.create_project_from_metadata
.. autofunction:: superannotate.clone_project
.. autofunction:: superannotate.delete_project
.. autofunction:: superannotate.rename_project
.. automethod:: superannotate.SAClient.search_projects
.. automethod:: superannotate.SAClient.create_project
.. automethod:: superannotate.SAClient.create_project_from_metadata
.. automethod:: superannotate.SAClient.clone_project
.. automethod:: superannotate.SAClient.delete_project
.. automethod:: superannotate.SAClient.rename_project
.. _ref_get_project_metadata:
.. autofunction:: superannotate.get_project_metadata
.. autofunction:: superannotate.get_project_image_count
.. autofunction:: superannotate.search_folders
.. autofunction:: superannotate.get_folder_metadata
.. autofunction:: superannotate.create_folder
.. autofunction:: superannotate.delete_folders
.. autofunction:: superannotate.upload_images_to_project
.. autofunction:: superannotate.attach_items_from_integrated_storage
.. autofunction:: superannotate.upload_image_to_project
.. autofunction:: superannotate.delete_annotations
.. automethod:: superannotate.SAClient.get_project_metadata
.. automethod:: superannotate.SAClient.get_project_image_count
.. automethod:: superannotate.SAClient.search_folders
.. automethod:: superannotate.SAClient.get_folder_metadata
.. automethod:: superannotate.SAClient.create_folder
.. automethod:: superannotate.SAClient.delete_folders
.. automethod:: superannotate.SAClient.upload_images_to_project
.. automethod:: superannotate.SAClient.attach_items_from_integrated_storage
.. automethod:: superannotate.SAClient.upload_image_to_project
.. automethod:: superannotate.SAClient.delete_annotations
.. _ref_upload_images_from_folder_to_project:
.. autofunction:: superannotate.upload_images_from_folder_to_project
.. autofunction:: superannotate.upload_video_to_project
.. autofunction:: superannotate.upload_videos_from_folder_to_project
.. automethod:: superannotate.SAClient.upload_images_from_folder_to_project
.. automethod:: superannotate.SAClient.upload_video_to_project
.. automethod:: superannotate.SAClient.upload_videos_from_folder_to_project
.. _ref_upload_annotations_from_folder_to_project:
.. autofunction:: superannotate.upload_annotations_from_folder_to_project
.. autofunction:: superannotate.upload_preannotations_from_folder_to_project
.. autofunction:: superannotate.add_contributors_to_project
.. autofunction:: superannotate.get_project_settings
.. autofunction:: superannotate.set_project_default_image_quality_in_editor
.. autofunction:: superannotate.get_project_workflow
.. autofunction:: superannotate.set_project_workflow
.. automethod:: superannotate.SAClient.upload_annotations_from_folder_to_project
.. automethod:: superannotate.SAClient.upload_preannotations_from_folder_to_project
.. automethod:: superannotate.SAClient.add_contributors_to_project
.. automethod:: superannotate.SAClient.get_project_settings
.. automethod:: superannotate.SAClient.set_project_default_image_quality_in_editor
.. automethod:: superannotate.SAClient.get_project_workflow
.. automethod:: superannotate.SAClient.set_project_workflow

----------

Exports
_______

.. autofunction:: superannotate.prepare_export
.. autofunction:: superannotate.get_annotations
.. autofunction:: superannotate.get_annotations_per_frame
.. automethod:: superannotate.SAClient.prepare_export
.. automethod:: superannotate.SAClient.get_annotations
.. automethod:: superannotate.SAClient.get_annotations_per_frame
.. _ref_download_export:
.. autofunction:: superannotate.download_export
.. autofunction:: superannotate.get_exports
.. automethod:: superannotate.SAClient.download_export
.. automethod:: superannotate.SAClient.get_exports

----------

Items
______

.. autofunction:: superannotate.query
.. autofunction:: superannotate.search_items
.. autofunction:: superannotate.download_annotations
.. autofunction:: superannotate.attach_items
.. autofunction:: superannotate.copy_items
.. autofunction:: superannotate.move_items
.. autofunction:: superannotate.get_item_metadata
.. autofunction:: superannotate.set_annotation_statuses
.. automethod:: superannotate.SAClient.query
.. automethod:: superannotate.SAClient.search_items
.. automethod:: superannotate.SAClient.download_annotations
.. automethod:: superannotate.SAClient.attach_items
.. automethod:: superannotate.SAClient.copy_items
.. automethod:: superannotate.SAClient.move_items
.. automethod:: superannotate.SAClient.assign_items
.. automethod:: superannotate.SAClient.unassign_items
.. automethod:: superannotate.SAClient.get_item_metadata
.. automethod:: superannotate.SAClient.set_annotation_statuses

----------

Subsets
______

.. automethod:: superannotate.SAClient.get_subsets

----------

Expand All @@ -83,50 +90,48 @@ ______


.. _ref_search_images:
.. autofunction:: superannotate.download_image
.. autofunction:: superannotate.set_image_annotation_status
.. autofunction:: superannotate.set_images_annotation_statuses
.. autofunction:: superannotate.download_image_annotations
.. autofunction:: superannotate.upload_image_annotations
.. autofunction:: superannotate.copy_image
.. autofunction:: superannotate.pin_image
.. autofunction:: superannotate.assign_images
.. autofunction:: superannotate.delete_images
.. autofunction:: superannotate.add_annotation_bbox_to_image
.. autofunction:: superannotate.add_annotation_point_to_image
.. autofunction:: superannotate.add_annotation_comment_to_image
.. autofunction:: superannotate.upload_priority_scores
.. automethod:: superannotate.SAClient.download_image
.. automethod:: superannotate.SAClient.download_image_annotations
.. automethod:: superannotate.SAClient.upload_image_annotations
.. automethod:: superannotate.SAClient.copy_image
.. automethod:: superannotate.SAClient.pin_image
.. automethod:: superannotate.SAClient.assign_images
.. automethod:: superannotate.SAClient.delete_images
.. automethod:: superannotate.SAClient.add_annotation_bbox_to_image
.. automethod:: superannotate.SAClient.add_annotation_point_to_image
.. automethod:: superannotate.SAClient.add_annotation_comment_to_image
.. automethod:: superannotate.SAClient.upload_priority_scores

----------

Annotation Classes
__________________

.. autofunction:: superannotate.create_annotation_class
.. automethod:: superannotate.SAClient.create_annotation_class
.. _ref_create_annotation_classes_from_classes_json:
.. autofunction:: superannotate.create_annotation_classes_from_classes_json
.. autofunction:: superannotate.search_annotation_classes
.. autofunction:: superannotate.download_annotation_classes_json
.. autofunction:: superannotate.delete_annotation_class
.. automethod:: superannotate.SAClient.create_annotation_classes_from_classes_json
.. automethod:: superannotate.SAClient.search_annotation_classes
.. automethod:: superannotate.SAClient.download_annotation_classes_json
.. automethod:: superannotate.SAClient.delete_annotation_class

----------

Team
_________________

.. autofunction:: superannotate.get_team_metadata
.. autofunction:: superannotate.get_integrations
.. autofunction:: superannotate.invite_contributors_to_team
.. autofunction:: superannotate.search_team_contributors
.. automethod:: superannotate.SAClient.get_team_metadata
.. automethod:: superannotate.SAClient.get_integrations
.. automethod:: superannotate.SAClient.invite_contributors_to_team
.. automethod:: superannotate.SAClient.search_team_contributors

----------

Neural Network
_______________

.. autofunction:: superannotate.download_model
.. autofunction:: superannotate.run_prediction
.. autofunction:: superannotate.search_models
.. automethod:: superannotate.SAClient.download_model
.. automethod:: superannotate.SAClient.run_prediction
.. automethod:: superannotate.SAClient.search_models

----------

Expand Down Expand Up @@ -196,7 +201,7 @@ Export metadata example:


Integration metadata
_______________
______________________

Integration metadata example:

Expand Down Expand Up @@ -383,8 +388,8 @@ Working with annotations
________________________

.. _ref_aggregate_annotations_as_df:
.. autofunction:: superannotate.validate_annotations
.. autofunction:: superannotate.aggregate_annotations_as_df
.. automethod:: superannotate.SAClient.validate_annotations
.. automethod:: superannotate.SAClient.aggregate_annotations_as_df

----------

Expand All @@ -398,5 +403,5 @@ _____________________________________________________________
Utility functions
--------------------------------

.. autofunction:: superannotate.consensus
.. autofunction:: superannotate.benchmark
.. autofunction:: superannotate.SAClient.consensus
.. autofunction:: superannotate.SAClient.benchmark
29 changes: 15 additions & 14 deletions docs/source/tutorial.sdk.rst
Original file line number Diff line number Diff line change
Expand Up @@ -77,14 +77,14 @@ Include the package in your Python code:

.. code-block:: python

import superannotate as sa
from superannotate import SAClient

SDK is ready to be used if default location config file was created using
the :ref:`CLI init <ref_cli_init>`. Otherwise to authenticate SDK with the :ref:`custom config file <ref_custom_config_file>`:

.. code-block:: python

sa.init("<path_to_config_json>")
sa = SAClient(config_path="<path_to_config_json>")

Creating a project
____________________________
Expand Down Expand Up @@ -273,80 +273,81 @@ You can find more information annotation format conversion :ref:`here <ref_conve

.. code-block:: python

import superannotate as sa
from superannotate import export_annotation
from superannotate import import_annotation

# From SA format to COCO panoptic format
sa.export_annotation(
export_annotation(
"tests/converter_test/COCO/input/fromSuperAnnotate/cats_dogs_panoptic_segm",
"tests/converter_test/COCO/output/panoptic",
"COCO", "panoptic_test", "Pixel","panoptic_segmentation"
)

# From COCO keypoints detection format to SA annotation format
sa.import_annotation(
import_annotation(
"tests/converter_test/COCO/input/toSuperAnnotate/keypoint_detection",
"tests/converter_test/COCO/output/keypoints",
"COCO", "person_keypoints_test", "Vector", "keypoint_detection"
)

# Pascal VOC annotation format to SA annotation format
sa.import_annotation(
import_annotation(
"tests/converter_test/VOC/input/fromPascalVOCToSuperAnnotate/VOC2012",
"tests/converter_test/VOC/output/instances",
"VOC", "instances_test", "Pixel", "instance_segmentation"
)

# YOLO annotation format to SA annotation format
sa.import_annotation(
import_annotation(
'tests/converter_test/YOLO/input/toSuperAnnotate',
'tests/converter_test/YOLO/output',
'YOLO', '', 'Vector', 'object_detection'
)

# LabelBox annotation format to SA annotation format
sa.import_annotation(
import_annotation(
"tests/converter_test/LabelBox/input/toSuperAnnotate/",
"tests/converter_test/LabelBox/output/objects/",
"LabelBox", "labelbox_example", "Vector", "object_detection"
)

# Supervisely annotation format to SA annotation format
sa.import_annotation(
import_annotation(
"tests/converter_test/Supervisely/input/toSuperAnnotate",
"tests/converter_test/Supervisely/output",
"Supervisely", "", "Vector", "vector_annotation"
)

# DataLoop annotation format to SA annotation format
sa.import_annotation(
import_annotation(
"tests/converter_test/DataLoop/input/toSuperAnnotate",
"tests/converter_test/DataLoop/output",
"DataLoop", "", "Vector", "vector_annotation"
)

# VGG annotation format to SA annotation format
sa.import_annotation(
import_annotation(
"tests/converter_test/VGG/input/toSuperAnnotate",
"tests/converter_test/VGG/output",
"VGG", "vgg_test", "Vector", "instance_segmentation"
)

# VoTT annotation format to SA annotation format
sa.import_annotation(
import_annotation(
"tests/converter_test/VoTT/input/toSuperAnnotate",
"tests/converter_test/VoTT/output",
"VoTT", "", "Vector", "vector_annotation"
)

# GoogleCloud annotation format to SA annotation format
sa.import_annotation(
import_annotation(
"tests/converter_test/GoogleCloud/input/toSuperAnnotate",
"tests/converter_test/GoogleCloud/output",
"GoogleCloud", "image_object_detection", "Vector", "object_detection"
)

# GoogleCloud annotation format to SA annotation format
sa.import_annotation(
import_annotation(
"tests/converter_test/SageMaker/input/toSuperAnnotate",
"tests/converter_test/SageMaker/output",
"SageMaker", "test-obj-detect", "Vector", "object_detection"
Expand Down
2 changes: 1 addition & 1 deletion pytest.ini
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@
minversion = 3.7
log_cli=true
python_files = test_*.py
addopts = -n auto --dist=loadscope
;addopts = -n auto --dist=loadscope
2 changes: 1 addition & 1 deletion requirements_dev.txt
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
superannotate_schemas>=v1.0.43dev5
superannotate_schemas>=v1.0.45dev1

Loading