Rotación de una matriz de píxeles 2D en 90 grados

Tengo una matriz de datos de píxeles para una imagen. La imagen que estoy obteniendo ya está girada a 270 grados. Así que estoy intentando girarlo de nuevo 90 grados para tener la imagen correcta. He intentado un algoritmo de transposición, cambiandodata[x][y] adata[y][x], pero no creo que esa sea la forma correcta. ¿Alguien puede guiarme, qué puedo hacer para que gire?

Respuestas a la pregunta(4)

Su respuesta a la pregunta