This experiment has two components:
The graph editor is a modified version of NodeGraphQt by Johnny Chan.
To install this tool, run the following command
$ python3 -m pip install depthai-gui
To run the visual pipeline editor, run the following command
$ depthai-gui
You can also provide optional arguments, like default context path (-p / --path
) or the project file to open (-o / --open
)
$ depthai-gui --help
usage: depthai-gui [-h] [-p PATH] [-o OPEN]
optional arguments:
-h, --help show this help message and exit
-p PATH, --path PATH Path to save/load default directory
-o OPEN, --open OPEN Path to project file to open
Also, you can use the demo program that will run the generated pipeline (or default ExampleGraph.json
) with the following command
$ depthai-gui-demo # to run a default ExampleGraph.json
$ depthai-gui-demo -p <path> # to run a custom pipeline
If you want to enhance or modify this script or would like to install it without PyPi, please install all the necessary requirements with
$ python3 install_requirements.py
Next, you can check the following files:
pipeline_editor.py
- Runs the visual pipeline editor (eqivalent of depthai-gui
)demo.py
- Runs the demo script (equivalent of depthai-gui-demo
)DAIPipelineGraph.py
is the graph parser.If you want to use the generated pipeline in your application, you can do so by importing DAIPipelineGraph
module.
And example integration is shown below
from DAIPipelineGraph import DAIPipelineGraph
pipeline_graph = DAIPipelineGraph( path=pipeline_path )
with dai.Device( pipeline_graph.pipeline ) as device:
...
The most useful fields you can use from DAIPipelineGraph
class are:
DAIPipelineGraph.pipeline
: A reference to the DepthAI pipelineDAIPipelineGraph.nodes
: A table of all the nodes. You can access them via the name you put into the "Node Name" field in the editor. Ex: pipeline_graph.nodes["rgb_cam"].setPreviewSize(300,300)
DAIPipelineGraph.xout_streams
: A list of all the names of the XLinkOut streamsYou can also check the demo script as a reference on how to make a working scripts with this class