Skip to main content

YOLO video detection in the TouchDesigner

Description

This project demonstrate how to use custom ML model in the TouchDesigner. The solution consists from two components:

  1. Script TOP in the TouchDesigner.
  2. External process to process data.
sequenceDiagram
    participant T as TouchDesigner
    participant S as Shared memory
    participant P as Python external process
    T->>S: Send frame to shared memory
    S->>P: Read frame from shared memory
    P->>S: Process frame and write to shared memory
    S->>T: Read processed frame from shared memory

Requirements

  1. Python 3.9 or higher. It is more preferable to have same version as in the TouchDesigner.

How to run

Install prebuild package from PyPi

PyPI version

From source

Install dependencies

For GPU:

pip install -r. /requirements.gpu.txt

For CPU:

pip install -r. /requirements.cpu.txt

For development:

pip install -r ./requirements.dev.txt

Compile Cython extension

You need C compiler to compile extension.

Develop mode

pip install -e .

Binary distribution

To compile binary distribution:

python -m cibuildwheel --platform <your_platform>

Install binary distribution:

pip install ./dist/*.whl

Usecases

Video detection

Run:

python ./main.py -c <checkpoint_path> -i <video_path> -o <video_path>

With TouchDesigner

Run server processing:

python ./processing.py -p <path_to_model>

Open touch_designer.py in the TouchDesigner as script TOP.

Metadata

Release files for touch-designer-yolo-detection 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for touch-designer-yolo-detection 0.1.0
File Interpreter ABI Platform Actions
touch_designer_yolo_detection-0.1.0-cp39-cp39-win_amd64.whl CPython 3.9 CPython 3.9 Windows x86-64 Details for touch_designer_yolo_detection-0.1.0-cp39-cp39-win_amd64.whl
touch_designer_yolo_detection-0.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.17+ x86-64 Details for touch_designer_yolo_detection-0.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
touch_designer_yolo_detection-0.1.0-cp39-cp39-macosx_10_9_x86_64.whl CPython 3.9 CPython 3.9 macOS 10.9+ x86-64 Details for touch_designer_yolo_detection-0.1.0-cp39-cp39-macosx_10_9_x86_64.whl

Total release size: 359.7 kB

Release files / touch_designer_yolo_detection-0.1.0-cp39-cp39-win_amd64.whl

Download URL touch_designer_yolo_detection-0.1.0-cp39-cp39-win_amd64.whl
Size 55.9 kB
Tags CPython 3.9 Windows x86-64
SHA-256 checksum
How to use checksums
07f037e73fb3b8f0bbf6493ae4f5e673eb4eb8c4c71127f983f8c4696f9b6351
BLAKE2b-256 checksum
How to use checksums
b3d111d46d9a881078630ca09d97a31e42e527e4d670df58c6944f3b6099e8a5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.9.13

Release files / touch_designer_yolo_detection-0.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL touch_designer_yolo_detection-0.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 247.8 kB
Tags CPython 3.9 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
b26a55fa9358f1fe9ac541a220ec8062ca4773c9764b4afbfa09e30eb716eba7
BLAKE2b-256 checksum
How to use checksums
2b62640c68ec0a2fb4b2e423bf8d71ad7c283f74a83381135945a25d307eee5f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.9.17

Release files / touch_designer_yolo_detection-0.1.0-cp39-cp39-macosx_10_9_x86_64.whl

Download URL touch_designer_yolo_detection-0.1.0-cp39-cp39-macosx_10_9_x86_64.whl
Size 56.0 kB
Tags CPython 3.9 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
8b64eb6a98fd75588d56135b74b586dc40525378809406adb8b400bdda567036
BLAKE2b-256 checksum
How to use checksums
be6e28794e1f1f3ffee7732186756dea24de0b38457927fecd54d4ff48a8a0a4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.9.17

Security for touch-designer-yolo-detection 0.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page