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.11.tar.gz (3.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dora_yolo-0.3.11-py3-none-any.whl (3.8 kB view details)

Uploaded Python 3

File details

Details for the file dora_yolo-0.3.11.tar.gz.

File metadata

  • Download URL: dora_yolo-0.3.11.tar.gz
  • Upload date:
  • Size: 3.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.6.12

File hashes

Hashes for dora_yolo-0.3.11.tar.gz
Algorithm Hash digest
SHA256 cd555e90eb61860e63669141eb54a89c149bac983d07ae1e9f35f8efe128d9b0
MD5 e636b4cb3822d5873c87c65e7dff9b11
BLAKE2b-256 da1433ca34d6c39c51d983b3ab0a2b3129bdd092b69002ac188136f7c28b2d81

See more details on using hashes here.

File details

Details for the file dora_yolo-0.3.11-py3-none-any.whl.

File metadata

File hashes

Hashes for dora_yolo-0.3.11-py3-none-any.whl
Algorithm Hash digest
SHA256 869b1c97852419f1963465e310b5d0d49bf5e6d61853ab7a4b3508d6a1df064b
MD5 8c9c44fe0876ac1666160c3a52fc2112
BLAKE2b-256 c889b4bbe0ceccc30f7f02c24952fcbe7a57d1e619363a95771bc50b259c1d5d

See more details on using hashes here.

Supported by

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