Skip to content

Releases: scaleapi/nucleus-python-client

v0.16.10

22 Nov 16:14
f2dbd31
Compare
Choose a tag to compare

Allow creating a dataset by crawling all images in a directory, recursively. Also supports privacy mode datasets.

Example structure:

~/Documents/
    data/
        2022/
            - img01.png
            - img02.png
        2023/
            - img01.png
            - img02.png

Default Example:

data_dir = "~/Documents/data"
client.create_dataset_from_dir(data_dir)
# this will create a dataset named "data" and will contain 4 images, with the ref IDs:
# ["2022/img01.png", "2022/img02.png", "2023/img01.png", "2023/img02.png"]

Example Privacy Mode:

This requires that a proxy (or file server) is setup and can serve files relative to the data_dir

data_dir = "~/Documents/data"
client.create_dataset_from_dir(
    data_dir,
    dataset_name='my-dataset',
    use_privacy_mode=True,
    privacy_mode_proxy="http://localhost:5000/assets/"
)

This would create a dataset my-dataset, and when opened in Nucleus, the images would be requested to the path:
<privacy_mode_proxy>/<img ref id>, for example: http://localhost:5000/assets/2022/img01.png

Improved

  • Method to allow for concurrent task fetches for pointcloud data, client.download_pointcloud_tasks(task_ids: List[str], frame_num: int)

Example:

>>> task_ids = ['task_1', 'task_2']
>>> resp = client.download_pointcloud_tasks(task_ids=task_ids, frame_num=1)
>>> resp
{
  'task_1': [Point3D(x=5, y=10.7, z=-2.3), ...],
  'task_2': [Point3D(x=1.3 y=11.1, z=1.5), ...],
}

v0.16.9

20 Nov 09:52
72ce737
Compare
Choose a tag to compare

Fixes

  • Minor fixes to video scene upload on privacy mode

v0.16.8

16 Nov 13:12
4aadb82
Compare
Choose a tag to compare

Added

Dataset Item width and height

  • Allow passing width and height to DatasetItem.
  • This is required when using privacy mode.

Dataset Item Fetch

  • Added dataset.items_and_annotation_chip_generator() functionality to generate chips of images in s3 or locally.
  • Added query parameter for dataset.items_and_annotation_generator() to filter dataset items.

Removed

  • upload_to_scale is no longer a property in DatasetItem, users should instead specify use_privacy_mode on the dataset during creation

v0.16.7

07 Nov 10:34
dc4a025
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.16.6...v0.16.7

v0.16.6

01 Nov 15:45
317d2bf
Compare
Choose a tag to compare

Added

  • Allow datasets to be created in "privacy mode". For example, client.create_dataset('name', use_privacy_mode=True).
  • Privacy Mode lets customers use Nucleus without sensitive raw data ever leaving their servers.
  • When set to True, you can submit URLs to Nucleus that link to raw data assets like images or point clouds, instead of transferring that data to Scale. Access control is then completely in the hands of users: URLs may optionally be protected behind your corporate VPN or an IP whitelist. When you load a Nucleus web page, your browser will directly fetch the raw data from your servers without it ever being accessible to Scale.

v0.16.5

30 Oct 17:27
3b0abe7
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.16.4...v0.16.5

v0.16.4

23 Oct 20:08
c641abb
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.16.3...v0.16.4

v0.16.3

10 Oct 16:59
27c7dfd
Compare
Choose a tag to compare

Added

  • Added a query_scenes method on the Dataset class.
  • Example
>>> ds = client.get_dataset('ds_id')
>>> scenes = ds.query_scenes('scene.metadata.foo = "baz"')
[Scene(reference_id="", metadata={}, ...), ...]

v0.16.2

06 Oct 12:57
e812ebf
Compare
Choose a tag to compare

0.16.2 - 2023-10-03

Fixed

  • Raise error on all error states for AsyncJob.sleep_until_complete(). Before it only handled the deprecated "Errored"

v0.16.1

21 Sep 08:32
22d3c1b
Compare
Choose a tag to compare

What's Changed

  • Add support for asynchronous embeddings export by @ntamas92 in #394

Full Changelog: v0.15.11...v0.16.1