Skip to main content

Dora Node for object detection with dora YOLOv8

Project description

Dora Node for detecting objects in images using YOLOv8

This node is used to detect objects in images using YOLOv8.

YAML

- id: object_detection
  build: pip install ../../node-hub/dora-yolo
  path: dora-yolo
  inputs:
    image: webcam/image

  outputs:
    - bbox
  env:
    MODEL: yolov5n.pt

Inputs

  • image: Arrow array containing the base image
## Image data
image_data: UInt8Array # Example: pa.array(img.ravel())
metadata = {
  "width": 640,
  "height": 480,
  "encoding": str, # bgr8, rgb8
}

## Example
node.send_output(
  image_data, {"width": 640, "height": 480, "encoding": "bgr8"}
  )

## Decoding
storage = event["value"]

metadata = event["metadata"]
encoding = metadata["encoding"]
width = metadata["width"]
height = metadata["height"]

if encoding == "bgr8":
    channels = 3
    storage_type = np.uint8

frame = (
    storage.to_numpy()
    .astype(storage_type)
    .reshape((height, width, channels))
)

Outputs

  • bbox: an arrow array containing the bounding boxes, confidence scores, and class names of the detected objects
bbox: {
    "bbox": np.array,  # flattened array of bounding boxes
    "conf": np.array,  # flat array of confidence scores
    "labels": np.array,  # flat array of class names
}

encoded_bbox = pa.array([bbox], {"format": "xyxy"})

decoded_bbox = {
    "bbox": encoded_bbox[0]["bbox"].values.to_numpy().reshape(-1, 4),
    "conf": encoded_bbox[0]["conf"].values.to_numpy(),
    "labels": encoded_bbox[0]["labels"].values.to_numpy(zero_copy_only=False),
}

Example

Check example at examples/python-dataflow

License

This project is licensed under Apache-2.0. Check out NOTICE.md for more information.

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

dora_yolo-0.3.7rc2.tar.gz (2.7 kB view details)

Uploaded Source

Built Distribution

dora_yolo-0.3.7rc2-py3-none-any.whl (3.6 kB view details)

Uploaded Python 3

File details

Details for the file dora_yolo-0.3.7rc2.tar.gz.

File metadata

  • Download URL: dora_yolo-0.3.7rc2.tar.gz
  • Upload date:
  • Size: 2.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.4 CPython/3.10.15 Linux/6.5.0-1025-azure

File hashes

Hashes for dora_yolo-0.3.7rc2.tar.gz
Algorithm Hash digest
SHA256 b9252054bddebd29506bba283754f33f31772e5c7b4402d107d16d27610b303a
MD5 d49333e800df971d87c29e88e572bc52
BLAKE2b-256 3612c839179e17c4fb21bbcfae507dbf0bfd92054008978c8aa78852d0f6c41d

See more details on using hashes here.

File details

Details for the file dora_yolo-0.3.7rc2-py3-none-any.whl.

File metadata

  • Download URL: dora_yolo-0.3.7rc2-py3-none-any.whl
  • Upload date:
  • Size: 3.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.4 CPython/3.10.15 Linux/6.5.0-1025-azure

File hashes

Hashes for dora_yolo-0.3.7rc2-py3-none-any.whl
Algorithm Hash digest
SHA256 3f09fd68e6e5c3797ab3034a078b157c55dcdd4202fe0b6b94416da9a4288e2a
MD5 7828cdb5728c622dea06ba5c8e9caf5d
BLAKE2b-256 c46689f25ae8cf36a48a2c66a41a6f1af94a4e823432017309df1d83dd794633

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