ライブラリをたくさん使いたくないので、PILを使わずに90度回転をしたい。
調べるとアフィン変換とか難しい方法ばかりだったので、numpyの知識を使ってシンプルに回転してみた。
コードだけ知りたい方は、以下のコードを実行してください。
90度回転
img.transpose(1,0,2)[:,::-1]
-90度回転
img.transpose(1,0,2)[::-1]
画像の読み込み
import cv2
img = cv2.imread('green_red_apple.png')
画像の転置
Opencvで読み込んだ画像はnumpy配列になっているのでnumpyのtranposeで転置することで90度回転の準備をする
transpose_img = img.transpose(1,0,2)
画像の90度回転
転置した画像を横方向にひっくり返したら90度回転になる。
numpy配列の順番を逆順にする方法でできる
clockwise = transpose_img[:,::-1]
画像の-90度回転
転置した画像を縦方向にひっくり返したら-90度回転になる
counter_clockwise = transpose_img[::-1]