Legacy example · C++ · Python · Version 1.0
Simple CV-CUDA
| Authors | Holoscan Team (NVIDIA) |
|---|---|
| Supported platforms | x86_64, aarch64 |
| Language | C++, Python |
| Version | 1.0 |
| Compatibility | HSDK 0.6 |
| Contribution level | Level 1 · Very high-quality code |
| Source | HoloHub |
Legacy HoloHub application
This application comes from HoloHub and was last tested with Holoscan SDK (HSDK) 0.6. It runs with the HoloHub CLI, ./holohub.
This application demonstrates seamless interoperability between Holoscan tensors and CV-CUDA tensors. The image processing pipeline is just a simple flip of the video orientation.
Note that the C++ version of this application currently requires extra code to handle conversion back and forth between CV-CUDA and Holoscan tensor types. On the Python side, the conversion is trivial due to the support for the DLPack Python specification in both CV-CUDA and Holoscan. We provide two operators to handle the interoperability between CVCUDA and Holoscan tensors.
Quick Start with HoloHub CLI Container
Run the following command to build and run the CV-CUDA sample application in a Docker container:
./holohub run cvcuda_basic
Advanced Build Steps
Using the docker file
This application requires a compiled version of CV-CUDA. For simplicity a DockerFile is available. To generate the container run:
./holohub build-container cvcuda_basic
The C++ version of the application can then be built by launching this container and using the provided holohub CLI.
./holohub run-container cvcuda_basic
./holohub build cvcuda_basic
Running the Application
This application uses the endoscopy dataset as an example. The build command above will automatically download it. This application is then run inside the container.
./holohub run-container cvcuda_basic
The Python version of the simple CV-CUDA pipeline example can be run via
python applications/cvcuda_basic/python/cvcuda_basic.py --data=/workspace/holohub/data/endoscopy
or using the HoloHub CLI entrypoint:
./holohub run cvcuda_basic --language=python --local
The C++ version of the simple CV-CUDA pipeline example can then be run via
./build/applications/cvcuda_basic/cpp/cvcuda_basic --data=/workspace/holohub/data/endoscopy
or using the run script
./holohub run cvcuda_basic --language=cpp --local