Python client for the OsloVision API
Project description
OsloVision Python Client
This Python package provides a client for interacting with the Oslo API, a platform for creating and managing datasets for machine learning projects. The client allows you to easily upload images, create annotations, and download dataset exports.
Features
- Simple interface for interacting with the Oslo API
- Support for adding images to projects
- Creation of annotations for images
- Downloading of dataset exports
- Automatic handling of authentication
Installation
You can install the Oslo API Python client using pip:
pip install oslovision
Usage
Here's a quick example of how to use the Oslo API client:
from oslovision import OsloVision
# Initialize the client
api = OsloVision("your_api_token_here")
# Test the API connection
print(api.test_api())
# Add an image to a project
with open("image.jpg", "rb") as img_file:
image_data = api.add_image("your_project_identifier", img_file)
print(f"Added image: {image_data['id']}")
# Create an annotation
annotation = api.create_annotation(
"your_project_identifier",
image_data['id'],
"cat",
x0=10,
y0=20,
width_px=100,
height_px=150
)
print(f"Created annotation: {annotation['id']}")
# Download an export
download_url = api.download_export("your_project_identifier", 1)
print(f"Export download URL: {download_url}")
API Reference
OsloVision(base_url: str, token: str)
Initialize the Oslo API client.
base_url: The base URL of the Oslo API (e.g., "https://app.oslo.vision/api/v1")token: Your Oslo API authentication token
Methods
test_api() -> Dict[str, str]
Test if the API is up and running and the token is valid.
add_image(project_identifier: str, image: Union[str, IOBase], split: str = "train", status: str = "pending") -> Dict
Add an image to a project.
project_identifier: The ID of the project to add the image toimage: Either a file object or a URL string of the imagesplit: The dataset split for the image (default: "train")status: The status of the image (default: "pending")
Returns a dictionary with the added image's data.
create_annotation(project_identifier: str, image_identifier: str, label: str, x0: float, y0: float, width_px: float, height_px: float) -> Dict
Create a new annotation for an image.
project_identifier: The ID of the projectimage_identifier: The ID of the image to annotatelabel: The label for the annotationx0,y0: The top-left coordinates of the bounding boxwidth_px,height_px: The width and height of the bounding box in pixels
Returns a dictionary with the created annotation's data.
download_export(project_identifier: str, version: int) -> str
Get the download URL for a dataset export.
project_identifier: The ID of the projectversion: The version number of the export
Returns the download URL as a string.
Contributing
Contributions to the Oslo API Python client are welcome! Please feel free to submit a Pull Request.
License
This project is licensed under the MIT License - see the LICENSE file for details.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file oslovision-0.1.2.tar.gz.
File metadata
- Download URL: oslovision-0.1.2.tar.gz
- Upload date:
- Size: 5.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.15.0 pkginfo/1.8.3 requests/2.27.1 setuptools/41.2.0 requests-toolbelt/1.0.0 tqdm/4.64.1 CPython/2.7.18
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
88c175bb2d3af5952848615cd9f1c5b9c65e0d191ef6affd5f98e5d32c81e1fb
|
|
| MD5 |
e07153a17020835b0fc36cfa5701b82c
|
|
| BLAKE2b-256 |
d32d802c9217e75dffa54a05138c05ca269091fa0659ea139d8d02a1d5d31952
|
File details
Details for the file oslovision-0.1.2-py3-none-any.whl.
File metadata
- Download URL: oslovision-0.1.2-py3-none-any.whl
- Upload date:
- Size: 5.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.15.0 pkginfo/1.8.3 requests/2.27.1 setuptools/41.2.0 requests-toolbelt/1.0.0 tqdm/4.64.1 CPython/2.7.18
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7e18e86ee723dce43a8061aa7a1ad299a1d8a91d4de6296e13af73c4434d3725
|
|
| MD5 |
f6c3b34e14e9a2644fccf1630669da63
|
|
| BLAKE2b-256 |
b2ef5957b50e35fc1fd1f19bcb26e2afce13752e114b940696167c448cbeb28f
|