一、函数介绍
cv2.flip函数可以实现对图像的 翻转操作 ,具体使用方式及参数如下:
cv2.flip(filename,flipcode)
其中,filename表示需要操作的图像,flipcode表示翻转方式,若为1则表示水平翻转,若为0则表示垂直翻转,若为-1则表示水平垂直翻转。
二、实例讲解
对图像进行水平翻转的代码如下:
# 对图像进行水平翻转
import cv2
img_ndarray = cv2.imread(r'D:\ydd-master\05 pycodes\test2.jpg')
print(type(img_ndarray)) # <class 'numpy.ndarray'> # 多维数组对象
img_flip = cv2.flip(img_ndarray,1) # 1表示水平翻转,0表示垂直翻转,-1表示水平垂直翻转
print(type(img_flip)) # <class 'numpy.ndarray'> # 多维数组对象
cv2.imwrite('./img_flip.jpg',img_flip)
# 上述代码也可以写成下述形式
# import cv2
# def flip_image(img_ndarray):
# return cv2.flip(img_ndarray, 1)
# img_ndarray = cv2.imread(r'D:\ydd-master\05 pycodes\test2.jpg')
# img_flip = flip_image(img_ndarray)
# cv2.imwrite('./img_flip.jpg',img_flip)
原图及水平翻转后的图如下:
修改上述代码中的flipcode,例如将1修改为0,即可得到原图垂直翻转后的图;将1修改为-1,即可得到原图垂直翻转后的图。
三、注意事项
1.使用cv2.imread()读取图像会改变图像的通道,即将RGB变为BGR;使用cv2.imwrite()保存图像则会将通道纠正回RGB。
2.cv2.imread()函数读取图像的结果是numpy.ndarray类型,即多维数组的形式。
四、结束语
请你务必一而再,再而三,三而不竭,千次万次地救自己于水火之间。