matriz - ¿Cuál es la diferencia entre UMat y Mat en OpenCV?
opencv mat to image (1)
Quizás la sección 3 de este documento ayude a: [enlace ahora roto] https://software.intel.com/sites/default/files/managed/2f/19/inde_opencv_3.0_arch_guide.pdf
Específicamente, la sección 3.1:
Un cv :: UMat de abstracción unificada que permite que se implementen las mismas API utilizando la CPU o el código OpenCL, sin el requisito de llamar explícitamente a la versión acelerada de OpenCL. Estas funciones utilizan una GPU habilitada para OpenCL si existe en el sistema y, de lo contrario, cambian automáticamente al funcionamiento de la CPU.
y sección 3.3:
En general, cv :: UMat es la clase C ++, que es muy similar a cv :: Mat. Pero los datos reales de UMat pueden ubicarse en una memoria normal del sistema, una memoria de video dedicada o una memoria compartida.
Enlace al uso sugerido en los comentarios de @BourbonCreams :
https://docs.opencv.org/3.0-rc1/db/dfa/tutorial_transition_guide.html#tutorial_transition_hints_opencl
He revisado la documentación y no obtuve una descripción clara y detallada sobre UMat; Sin embargo, creo que tiene algo que ver con la GPU y la CPU. Por favor, ayúdame. Gracias.