clCreateImage2D – Charger une image RVB

J’essaie de charger une image OpenCV ( IplImage ) dans le processeur graphique avec clCreateImage2D .

La raison d’utiliser IplImage est, je veux charger n’importe quel type d’image. (Jpg, bmp, png).

Je peux charger une image à l’aide de clCreateImage2D avec CL_MEM_READ_ONLY | CL_MEM_COPY_HOST_PTR CL_MEM_READ_ONLY | CL_MEM_COPY_HOST_PTR mem_flags et les CL_RGB et CL_UNORM_SHORT_565 . Mais dans le kernel, la fonction read_imagef n’est pas acceptée CL_UNORM_SHORT_565 type CL_UNORM_SHORT_565 .

Alors, comment puis-je envoyer une image RVB à la fonction du kernel OpenCL?

Edit: J’ai converti l’image d’entrée en 32 bits. A présent, quels seraient les image_channel_order et image_channel_data_type ? L’ordre ne peut pas être RGBA car il n’a pas de canal alpha.

Le format RVB 24 bits n’est pas pris en charge par OpenCL. Il faut donc d’abord le convertir en RVB 32 bits, puis le transmettre au kernel OpenCL.