PVA Solutions#
The PVA Solutions project offers source code and samples for optimized PVA operators, designed to accelerate application development across a diverse range of domains. Utilize the code as is, or customize it to suit your specific requirements.
PVA Operator C APIs can be seamlessly integrated with CUPVA and NVCV APIs to develop high-performance PVA applications. These operators include both host and device code and can be scheduled on the PVA for execution using CUPVA Stream and Scheduling Host APIs. For detailed information on the CUPVA APIs, refer to the CUPVA SDK documentation.
Operators use NVCV Tensor data structures as input and output data containers. NVCV APIs are part of the NVIDIA CV-CUDA™ open-source project, which can be found at: CVCUDA/CV-CUDA.
The PVA Solutions repository includes the CV-CUDA project as a submodule to build and utilize the NVCV APIs. For detailed information on the NVCV APIs, refer to the CV-CUDA Documentation and the repository.
A sample application is provided to demonstrate the usage of the operators.
Release Notes#
PVA Solutions v0.2.0#
7 New Operators:
BatchSVD: Performs batch Singular Value Decomposition.
BlToPl: Converts block linear format to pitch linear format.
ConvertImageFormat: Performs image format conversions.
FastCorner: Detects corners in images using the FAST algorithm.
GaussianFilter: Applies Gaussian blur to images.
ImageBlend: Blends multiple images together.
ImageResize: Resizes images to specified dimensions.
Device Primitives:
2D Convolution
QNX Support: Added support for building for QNX OS.
Pre-built device target binaries: Build and run PVA Solutions on hardware without the Synopsys ASIP Programmer.
Note
To customize the kernels and compile for hardware, the ASIP Programmer is needed.
PVA Solutions v0.1.0#
7 Image Processing / Deep Learning Operators with C APIs.
CornerSubPix: Refines the corner locations to sub-pixel accuracy.
DepthToSpace: Rearranges data from depth into blocks of spatial data.
ImageHistogram: Computes the histogram of an image.
MinMaxLoc: Finds the minimum and maximum values with their locations.
MixChannels: Splits and merges image channels.
Morphology: Performs morphological transformations such as erosion and dilation.
TemplateMatching: Finds the location of a template image within a larger image.
Sample Applications: Practical examples demonstrating the usage of the operators.