平移
平移是指将图像沿水平或垂直方向移动一定的像素。假设将图像水平移动m个像素,垂直移动n个像素,则图像转换的矩阵运算公式如下。
dst(x,y)=src(x+m,y+n)
等价于如下公式。
dst(x,y)=src(1·x+0·y+m,0·x+1·y+n)
所以,转换矩阵M=[█(1@0)█(0@1)█(m@n)] 。
示例代码如下。
test4-7.py:将图像向右移动100像素,向下移动50像素
import cv2
import numpy as np
img=cv2.imread('bee.jpg') #读取图像
cv2.imshow('img',img) #显示图像
height=img.shape[0] #获得图像高度
width=img.shape[1] #获得图像宽度
dsize=(width,height)
m=np.float32([[1,0,100],[0,1,50]]) #创建转换矩阵
img2=cv2.warpAffine(img,m,dsize) #平移图像
cv2.imshow('imgx+100y+50',img2) #显示图像
cv2.waitKey(0)