Bonjour,
je viens vers vous avec une petite question.
Je fais une rotation d'une image. Celle-ci marche très bien avec mes images 1-Channel et plus rien ne va avec mes images 3-Channel.

J'ai l'impression que cela vient du fait que je déclare ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
Mat in(image->ry, image->rx, type, image->data);
Où image->data est rangé de la sorte RRRRGGGGBBBB.

A la fin je récupère la sortie de la rotation, de cette façon
Code : Sélectionner tout - Visualiser dans une fenêtre à part
memcpy(image->data, out.data, ndata * number_of_channels * sizeof(unsigned short));
Est-ce que mon erreur viendrait de là ? Parce que OpenCV travaille en RGBRGB (voir meme BGRBGR).
Ce qui est "marrant" c'est que si je fais une rotation de 180degrés, je retrouve mes couches RGB inversées en BGR. Pour d'autres angles c'est juste une bouilli de pixels.

Ce qui est bizarre c'est que j'utilisais la même méthode pour redimensionner une image (avec resize) et je n'avais pas de soucis, ni avec un canal ni avec 3. Du coup pourquoi ca marcherait dans un cas et pas dans l'autre ?

Cordialement