opencv 学习笔记9:图像缩放与图像翻转

图像缩放

缩放包括缩小和放大

语法格式
cv2.resize()有很多参数,其中src和dsize必备

cv2.resize(src.dsize)
src原始图像路径
dsize 目标图像大小 (列,行)

cv2.resize(src.dsize,fx,fy)
fx,fy 缩放大小 比列,在dsize不用情况下。

b=cv2.resize(a,dszie=None,fx=0.5,fy=0.5)

算例代码
指定大小

import cv2
a=cv2.imread("image\\lenacolor.png")
b=cv2.resize(a,(200,100))
#注意:第2个参数控制的是“列长度、行长度”,注意顺序。
cv2.imshow("original",a)
cv2.imshow("resize",b)
cv2.waitKey()
cv2.destroyAllWindows()
import cv2
a=cv2.imread("image\\lenacolor.png")
size=(200,100)
b=cv2.resize(a,size)
#注意:第2个参数控制的是“列长度、行长度”,注意顺序。
cv2.imshow("original",a)
cv2.imshow("resize",b)
cv2.waitKey()
cv2.destroyAllWindows()

按比例缩放
rows,cols=a.shape[:2] #2表示取0,1行列数,不取通道

import cv2
a=cv2.imread("image\\lenacolor.png")
rows,cols=a.shape[:2]
size=(round(cols*0.5),round(rows*1.2))
b=cv2.resize(a,size)
#注意:第2个参数控制的是“列长度、行长度”,注意顺序。
cv2.imshow("original",a)
cv2.imshow("resize",b)
cv2.waitKey()
cv2.destroyAllWindows()
import cv2
a=cv2.imread("image\\lenacolor.png")
rows,cols=a.shape[:2]
size=(round(cols*0.5),round(rows*1.2))
b=cv2.resize(a,size)
#注意:第2个参数控制的是“列长度、行长度”,注意顺序。
cv2.imshow("original",a)
cv2.imshow("resize",b)
cv2.waitKey()
cv2.destroyAllWindows()

使用fx,fy

import cv2
import numpy as np
a=cv2.imread("image\\lenacolor.png")
b=cv2.resize(a,None,fx=1.2,fy=0.5)
cv2.imshow("original",a)
cv2.imshow("resize",b)
cv2.waitKey()
cv2.destroyAllWindows()

图像翻转

flip:翻转
语法:
dst=cv2.flip(src,flipCode)
src:原始图像
flipCode:翻转模式 :左右翻转,上下翻转,左右上下翻转。

flipCode=0:以X轴上下翻转
flipCode>0:以y轴左右翻转
flipCode<0:以x轴和y轴翻转.

import cv2

a=cv2.imread('lenacolor.png')#cv2.IMREAD_UNCHANGED 未改变
b=cv2.flip(a,-1)
cv2.imshow("original",a)
cv2.imshow("flip",b)
cv2.waitKey()
cv2.destroyAllWindows()


总目录链接:
python3+opencv学习笔记汇总目录(适合基础入门学习)
电气专业的计算机小白,写博文不容易,如果你觉得本文对你有用,请点个赞再走,谢谢。

你可能感兴趣的:(CV计算机视觉)