Skip to main content

Efficient and distributed polygon Non-Maximum Suppression (NMS) library

Project description

PolyGoneNMS

PolyGoneNMS is a library for efficient and distributed polygon Non-Maximum Suppression (NMS) in Python. It supports various NMS methods, intersection calculations, and can handle large numbers of polygons in 1D, 2D, and 3D spaces. PolyGoneNMS uses R-tree data structures and shapely polygon objects for optimal performance.

Benchmark Plots

Benchmark results

Features

  • Efficient polygon NMS for large numbers of polygons.
  • Support for various NMS methods: Default, Soft, and Class Agnostic.
  • Support for different intersection methods: IOU, IOS, and Dice.
  • R-tree data structure for efficient spatial indexing and querying.
  • Distributed processing support using Ray and Dask.
  • Comprehensive documentation and examples.

Installation

You can install PolyGoneNMS using pip:

pip install polygone-nms

Quickstart

import numpy as np
from polygone_nms import polygone_nms

# Example input data
data = np.array([
    [0, 0, 1, 1, 0, 1, 0, 0, 1, 0.9],
    [0.5, 0.5, 1.5, 1.5, 0.5, 1.5, 0, 0, 1, 0.8],
])

# Apply NMS
results = polygone_nms(data, distributed=None, nms_method="Default", intersection_method="IOU")

print(results)

For a more detailed guide on using PolyGoneNMS, please see the Quickstart in the documentation.

Documentation

Detailed documentation is available at: Docs

Contributing

We welcome contributions to the project! Please follow the usual GitHub process for submitting issues or pull requests.

License

This project is licensed under the MIT License.

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

polygone-nms-0.1.6.tar.gz (14.2 kB view details)

Uploaded Source

Built Distribution

polygone_nms-0.1.6-py3-none-any.whl (10.8 kB view details)

Uploaded Python 3

File details

Details for the file polygone-nms-0.1.6.tar.gz.

File metadata

  • Download URL: polygone-nms-0.1.6.tar.gz
  • Upload date:
  • Size: 14.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.3

File hashes

Hashes for polygone-nms-0.1.6.tar.gz
Algorithm Hash digest
SHA256 366571cf24300f56d7be69d6d73de1f94fa43776164420bba3221d5247a8adea
MD5 4cbe2f05962820ea211c4f197bb9538d
BLAKE2b-256 2f7f8e3e99d0a3ff91bad0ba12c9365e0b0f96f7b7347decacba10af154c921e

See more details on using hashes here.

File details

Details for the file polygone_nms-0.1.6-py3-none-any.whl.

File metadata

  • Download URL: polygone_nms-0.1.6-py3-none-any.whl
  • Upload date:
  • Size: 10.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.3

File hashes

Hashes for polygone_nms-0.1.6-py3-none-any.whl
Algorithm Hash digest
SHA256 4fbb5bab5719624a4fe0d013a9ecfdd3e0c8b865bfc86b78544a14d0e2358e20
MD5 93077d1d01d65e661a7ad35f8239a5fb
BLAKE2b-256 0f6415c711fc71ab982dd9485ccfb822fd2dd0c62094ea84c42e1377719d6a53

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page