Repository: opencv
Issue: Implementation: CUDA support in the pre-built binaries of OpenCV
Labels: feature

### Describe the feature and motivation

Dear OpenCV Development Team,

I am upset and have much **dissatisfaction** regarding the absence of CUDA support in the pre-built binaries of OpenCV available through pip.

As a user who relies heavily on GPU acceleration for computational tasks, the lack of CUDA support in the standard opencv-python and opencv-python-headless packages is a significant limitation. CUDA support is crucial for optimizing performance in many applications, especially in the field of computer vision and deep learning.

While I understand that CUDA is an optional feature and building OpenCV with CUDA support from source is possible, this process is complex and time-consuming. Many users, including myself, would greatly benefit from having CUDA support available in the pre-built binaries to streamline the installation process and leverage GPU acceleration efficiently.

I kindly request that the OpenCV team consider providing pre-built binaries with CUDA support included by default. This enhancement would significantly improve the accessibility and performance of OpenCV for users who rely on GPU acceleration for their projects.


### Additional context

Proposed Solution:

Build System Integration:

Update Build Scripts: Modify the build scripts used for creating OpenCV binaries to include options for CUDA support. This involves configuring CMake to enable CUDA-related features during the build process.
Use Continuous Integration (CI): Incorporate CUDA support into the CI pipeline to ensure that CUDA-enabled binaries are built and tested regularly. Platforms like GitHub Actions, GitLab CI, or Jenkins can be configured to handle CUDA builds.
Binary Distribution:

Pre-built Binaries: Provide CUDA-enabled binaries through pip. This could be achieved by creating separate packages or adding CUDA support as an optional feature within the existing package.
Package Naming Convention: Use a clear naming convention for CUDA-enabled packages, such as opencv-python-cuda, to differentiate them from the standard binaries.
Documentation and Support:

Update Documentation: Clearly document the availability of CUDA-enabled binaries, including installation instructions, compatibility details, and usage guidelines.
Provide Support: Offer support channels or forums where users can seek assistance related to CUDA support in OpenCV. This can help address any issues or questions that arise.
Community and User Feedback:

Gather Feedback: Engage with the OpenCV user community to gather feedback on the CUDA support implementation. This can be done through surveys, forums, or GitHub issues.
Iterate Based on Feedback: Continuously improve the CUDA support based on user feedback and performance metrics.
By adopting these measures, OpenCV can provide a more robust solution for users who require GPU acceleration, thereby enhancing the overall user experience and broadening the applicability of OpenCV in high-performance computing scenarios.

Thank you for considering this proposal. I look forward to your feedback and the possibility of seeing CUDA support included in future OpenCV releases.