Skip to main content

Dora Node for capturing video with OpenCV

Project description

Dora Node for capturing video with OpenCV

This node is used to capture video from a camera using OpenCV.

YAML

- id: opencv-video-capture
  build: pip install ../../opencv-video-capture
  path: opencv-video-capture
  inputs:
    tick: dora/timer/millis/16 # try to capture at 60fps
  outputs:
    - image: # the captured image

  env:
    PATH: 0 # optional, default is 0

    IMAGE_WIDTH: 640 # optional, default is video capture width
    IMAGE_HEIGHT: 480 # optional, default is video capture height

    # optional, default is 95.
    # This is used only when encoding is one of "jpeg", "jpg" or "jpe".
    JPEG_QUALITY: 95

Inputs

  • tick: empty Arrow array to trigger the capture

Outputs

  • image: an arrow array containing the captured 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))
)

Examples

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

opencv_video_capture-0.5.0.tar.gz (6.6 kB view details)

Uploaded Source

Built Distribution

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

opencv_video_capture-0.5.0-py3-none-any.whl (6.3 kB view details)

Uploaded Python 3

File details

Details for the file opencv_video_capture-0.5.0.tar.gz.

File metadata

  • Download URL: opencv_video_capture-0.5.0.tar.gz
  • Upload date:
  • Size: 6.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.6 {"installer":{"name":"uv","version":"0.11.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for opencv_video_capture-0.5.0.tar.gz
Algorithm Hash digest
SHA256 2d2d5f9fbf09a548540894730eb77fca7a31e2ebdea005aea1177b9541eaaa1a
MD5 fcd57fc57d1763a168e3e16f9196a46d
BLAKE2b-256 5782b03184abf98ee651914d24df3f086fd075ab85c104231ab75c3fe35312fa

See more details on using hashes here.

File details

Details for the file opencv_video_capture-0.5.0-py3-none-any.whl.

File metadata

  • Download URL: opencv_video_capture-0.5.0-py3-none-any.whl
  • Upload date:
  • Size: 6.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.6 {"installer":{"name":"uv","version":"0.11.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for opencv_video_capture-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0a873c2c3980984eed4110d5cbf4286362c197cbdda41f78b8d1c1de77beeb4e
MD5 d03e1f43770c6786d56dbce4b2fe77c7
BLAKE2b-256 50b09420a4f1f5b640cf7855cdf285acac8eb44efb209878bc2c30ee2eba9a4a

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