????????由于百度搜索出来的靠前几名的博客说的都是错的,在此记录下opencv里flip函数的用法,主要是flipCode的对应关系。惯例先放结论:
????????小于0(例如-1)代表左右上下颠倒;0代表上下颠倒;大于0(例如1)代表左右颠倒。
?C++用法
CV_EXPORTS_W void flip(
InputArray src, // 输入图像
OutputArray dst, // 输出图图像
int flipCode // <0 左右上下颠倒; 0 上下颠倒;>0 左右颠倒
);
python用法
def flip(src, flipCode, dst=None): # real signature unknown; restored from __doc__
"""
flip(src, flipCode[, dst]) -> dst
. @param src 输入图像
. @param dst 函数输出同样尺寸的翻转图像
. @param flipCode <0 左右上下颠倒; 0 上下颠倒;>0 左右颠倒
"""
pass
简单粗暴的Python测试代码
import cv2
def flip_show_img(img, flipCode):
img_new = cv2.flip(img, flipCode)
cv2.putText(img_new, str(flipCode), (50, 50), 2, 2, (255, 0, 255), 3)
cv2.imshow(str(flipCode), img_new)
def show_img(path):
img = cv2.imread(path)
flip_show_img(img, -1)
flip_show_img(img, 0)
flip_show_img(img, 1)
cv2.putText(img, "origin", (50, 50), 2, 2, (255, 0, 255), 3)
cv2.imshow("origin", img)
cv2.waitKey()
if __name__ == '__main__':
show_img(r"C:\Users\zmdsjtu\pics\thumbup.png")
|