Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
0eb04dc
Updated add_contributors_to_project
VaghinakDev Apr 5, 2023
77b7e4c
Fixed run_prediction
VaghinakDev Apr 5, 2023
dbcbf35
structure changes
VaghinakDev Apr 5, 2023
302cef5
removed create_project_from_metadata get_project_image_count
VaghinakDev Apr 5, 2023
ebf053c
Updated PerFrame convertor
VaghinakDev Apr 6, 2023
ce9d6a5
Merge pull request #595 from superannotateai/1864_add_contributors_to…
VaghinakDev Apr 7, 2023
f8f8181
Merge pull request #596 from superannotateai/1865_run_prediction
VaghinakDev Apr 7, 2023
4c0340c
Merge pull request #597 from superannotateai/1838_deprecated_functions
VaghinakDev Apr 7, 2023
7e41ad8
Merge pull request #598 from superannotateai/1894_per_frame_convertor
VaghinakDev Apr 7, 2023
ba27291
Fix S3Repo interface
VaghinakDev Apr 10, 2023
7d9336b
Update __init__.py
VaghinakDev Apr 12, 2023
3ddbd3b
changed SDK auth flow
Apr 13, 2023
16eb528
changes in SDK auth flow
Apr 13, 2023
8698998
Merge pull request #599 from superannotateai/1900_auth
nareksa Apr 14, 2023
ce7f1fb
added History page in docs
Apr 17, 2023
841981f
Merge pull request #600 from superannotateai/1905_docs
nareksa Apr 17, 2023
607a7bf
Update __init__.py
nareksa Apr 17, 2023
804c48c
Docs upadates
VaghinakDev Apr 19, 2023
ea9de62
Merge pull request #601 from superannotateai/1921_docs
VaghinakDev Apr 19, 2023
0415f81
Update __init__.py
VaghinakDev Apr 19, 2023
5b170b8
doc string updates
VaghinakDev Apr 19, 2023
31f6b95
Merge branch 'friday' into minor_updates
VaghinakDev Apr 19, 2023
4c8b592
Merge pull request #602 from superannotateai/minor_updates
nareksa Apr 19, 2023
7c520ba
Upgraded requests package
VaghinakDev Apr 19, 2023
cccef36
Folder tests update
VaghinakDev Apr 19, 2023
9a8ff00
Update __init__.py
VaghinakDev Apr 19, 2023
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
379 changes: 0 additions & 379 deletions CHANGELOG.md

This file was deleted.

596 changes: 596 additions & 0 deletions CHANGELOG.rst

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ Welcome to the SuperAnnotate Python Software Development Kit (SDK), which enable
:target: https://github.com/superannotateai/superannotate-python-sdk/blob/master/LICENSE/
:alt: License
.. |Changelog| image:: https://img.shields.io/static/v1?label=change&message=log&color=yellow&style=flat-square
:target: https://github.com/superannotateai/superannotate-python-sdk/blob/master/CHANGELOG.md
:target: https://github.com/superannotateai/superannotate-python-sdk/blob/master/CHANGELOG.rst
:alt: Changelog

Resources
Expand Down
1 change: 1 addition & 0 deletions docs/source/api_reference/api_folder.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ Folders
=======

.. automethod:: superannotate.SAClient.search_folders
.. automethod:: superannotate.SAClient.set_folder_status
.. automethod:: superannotate.SAClient.assign_folder
.. automethod:: superannotate.SAClient.unassign_folder
.. automethod:: superannotate.SAClient.get_folder_by_id
Expand Down
2 changes: 0 additions & 2 deletions docs/source/api_reference/api_project.rst
Original file line number Diff line number Diff line change
Expand Up @@ -5,15 +5,13 @@ Projects
.. _ref_search_projects:
.. automethod:: superannotate.SAClient.create_project
.. automethod:: superannotate.SAClient.search_projects
.. automethod:: superannotate.SAClient.create_project_from_metadata
.. automethod:: superannotate.SAClient.clone_project
.. automethod:: superannotate.SAClient.rename_project
.. automethod:: superannotate.SAClient.delete_project
.. _ref_get_project_metadata:
.. automethod:: superannotate.SAClient.get_project_by_id
.. automethod:: superannotate.SAClient.set_project_status
.. automethod:: superannotate.SAClient.get_project_metadata
.. automethod:: superannotate.SAClient.get_project_image_count
.. automethod:: superannotate.SAClient.upload_images_to_project
.. automethod:: superannotate.SAClient.attach_items_from_integrated_storage
.. automethod:: superannotate.SAClient.upload_image_to_project
Expand Down
1 change: 1 addition & 0 deletions docs/source/changelog_link.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
.. include:: ../../CHANGELOG.rst
112 changes: 2 additions & 110 deletions docs/source/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -16,115 +16,7 @@
API Reference <api_reference/index>
CLI Reference <cli_client>
SA Server <sa_server>
History <changelog_link>
LICENSE.rst

----------

SuperAnnotate Python SDK documentation
==================================================================

SuperAnnotate Python SDK allows access to the platform without web browser:

.. code-block:: python

from superannotate import SAClient


sa_client = SAClient()

project = 'Dogs'

sa_client.create_project(
project_name=project,
project_description='Test project generated via SDK',
project_type='Vector'
)

sa_client.create_annotation_class(
project=project,
name='dog',
color='#F9E0FA',
class_type='tag'
)

sa_client.attach_items(
project=project,
attachments=[
{
'url': 'https://drive.google.com/uc?export=download&id=1ipOrZNSTlPUkI_hnrW9aUD5yULqqq5Vl',
'name': 'dog.jpeg'
}
]
)

sa_client.upload_annotations(
project=project,
annotations=[
{
'metadata': {'name': 'dog.jpeg'},
'instances': [
{'type': 'tag', 'className': 'dog'}
]
}
]
)

sa_client.get_annotations(project=project, items=['dog.jpeg'])

----------

Installation
____________


SDK is available on PyPI:

.. code-block:: bash

pip install superannotate


The package officially supports Python 3.7+ and was tested under Linux and
Windows (`Anaconda <https://www.anaconda.com/products/individual#windows>`_) platforms.

----------

Supported Features
__________________

- Search projects
- Create/delete a project
- Upload images to a project from a local or AWS S3 folder
- Upload videos to a project from a local folder
- Upload annotations/pre-annotations to a project from local or AWS S3 folder
- Set the annotation status of the images being uploaded
- Export annotations from a project to a local or AWS S3 folder
- Share and unshare a project with a team contributor
- Invite a team contributor
- Search images in a project
- Download a single image
- Copy/move image between projects
- Get image bytes (e.g., for numpy array creation)
- Set image annotation status
- Download image annotations/pre-annotations
- Create/download project annotation classes
- Add annotations to images on platform
- Convert annotation format from/to COCO
- Add annotations to local SuperAnnotate format JSONs
- CLI commands for simple tasks
- Aggregate class/attribute distribution as histogram

----------

License
_______

This SDK is distributed under the :ref:`MIT License <ref_license>`.

----------

Questions and Issues
____________________

For questions and issues please use issue tracker on
`GitHub <https://github.com/superannotateai/superannotate-python-sdk>`_.
.. include:: ../../README.rst
8 changes: 4 additions & 4 deletions requirements.txt
Original file line number Diff line number Diff line change
@@ -1,24 +1,24 @@
pydicom>=2.0.0
boto3>=1.14.53
requests==2.26.0
requests==2.28.2
requests-toolbelt>=0.9.1
aiohttp>=3.8.1
tqdm==4.64.0
pillow==9.4.0
matplotlib>=3.3.1
xmltodict==0.12.0
opencv-python>=4.4.0.42
wheel>=0.38.4
wheel>=0.40.0
packaging>=20.4
plotly>=4.1.0
ffmpeg-python>=0.2.0
fire==0.4.0
mixpanel==4.8.3
pydantic>=1.10.4
pydantic>=1.10.7
setuptools>=57.4.0
email-validator>=1.0.3
jsonschema==3.2.0
pandas>=1.1.4
aiofiles==0.8.0
Werkzeug==2.2.2
Werkzeug==2.2.3
Jinja2==3.1.2
2 changes: 1 addition & 1 deletion src/superannotate/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
import sys
import typing

__version__ = "4.4.11"
__version__ = "4.4.12dev4"


sys.path.append(os.path.split(os.path.realpath(__file__))[0])
Expand Down
12 changes: 7 additions & 5 deletions src/superannotate/lib/app/interface/base_interface.py
Original file line number Diff line number Diff line change
Expand Up @@ -132,11 +132,11 @@ def get_mp_instance(self) -> Mixpanel:
return Mixpanel(mp_token)

@staticmethod
def get_default_payload(team_name, user_id):
def get_default_payload(team_name, user_email):
return {
"SDK": True,
"Team": team_name,
"Team Owner": user_id,
"User Email": user_email,
"Version": __version__,
"Python version": platform.python_version(),
"Python interpreter type": platform.python_implementation(),
Expand Down Expand Up @@ -207,13 +207,15 @@ def _track_method(self, args, kwargs, success: bool):
function_name = self.function.__name__ if self.function else ""
arguments = self.extract_arguments(self.function, *args, **kwargs)
event_name, properties = self.default_parser(function_name, arguments)
user_id = client.controller.team_data.creator_id
user_email = client.controller.current_user.email
team_name = client.controller.team_data.name

properties["Success"] = success
default = self.get_default_payload(team_name=team_name, user_id=user_id)
default = self.get_default_payload(
team_name=team_name, user_email=user_email
)
self._track(
user_id,
user_email,
event_name,
{**default, **properties, **CONFIG.get_current_session().data},
)
Expand Down
Loading