opencv+python旋转图片

说明

python-opencv读取的图片本就是numpy格式,利用矩阵的相关操作,可以快速完成图片的顺时针90度和逆时针90度。

本例子利用矩阵转置和镜像翻转的组合,可以快速实现图片的翻转。

代码

参考了别人的c++代码,完成了python版本的程序。
参考链接:https://blog.csdn.net/tianzhaixing2013/article/details/53037474

import cv2

# 顺时针旋转90度
def RotateClockWise90(img):
    trans_img = cv2.transpose( img )
    new_img = cv2.flip(trans_img, 1)
    return new_img


# 逆时针旋转90度
def RotateAntiClockWise90(img):
    trans_img = cv2.transpose( img )
    new_img = cv2.flip( trans_img, 0 )
    return new_img

def test_rot(img_path):
    img = cv2.imread(img_path)
    cv2.imshow('raw', img)

    trans_img = cv2.transpose(img)
    cv2.imshow( 'trans', trans_img )

    clock90_img = RotateClockWise90(img)
    cv2.imshow( 'clock90', clock90_img )

    ant_clock90_img = RotateAntiClockWise90(img)
    cv2.imshow('ant_clock90', ant_clock90_img)

    key_ret = cv2.waitKey( 0 )

if __name__ == '__main__':
    test_rot('./cv.jpg')

原图:
opencv+python旋转图片_第1张图片
转置后的图片:
opencv+python旋转图片_第2张图片

顺时针旋转90°后的图像:
opencv+python旋转图片_第3张图片

逆时针选择90°后的图像:
opencv+python旋转图片_第4张图片

你可能感兴趣的:(python,opencv,这就是opencv)