对像素点直接操作来实现仿射变换
第一部分:图片倒置
1.图片倒置就是将图片的像素点就行倒置,左上角的像素点 与对应右下角的像素点就行交换,经过这样的操作后,就实现了图片的倒置,下面给出操作的代码。
import cv2 import numpy as np img = cv2.imread("1.jpg") h,w = img.shape[:2] dst = np.zeros((h*2,w*2,3),np.uint8) for i in range(h): for j in range(w): dst[i,j] = img[i,j] dst[h*2-i-1,w*2-j-1] = img[i,j] cv2.imshow("dst",dst) cv2.waitkey(0)
第二部分:镜像
就想在照镜子一样,里面的你和镜子里面的一样,完全一样。
转换成对像素操作就是上下像素点互换。
import cv2 import numpy as np img = cv2.imread("1.jpg") h,w = img.shape[:2] dst = np.zeros((h*2,w*2,3),np.uint8) for i in range(h): for j in range(w): dst[i,j] = img[i,j] dst[h*2-i-1,j] = img[i,j] cv2.imshow("dst",dst) cv2.waitkey(0)
以上就是仿射变换的一般操作,还要其他的变换,例如:旋转等,当然也可以直接调用cv2提供的api直接实现,可以去查看一下官方的文档学习一下。
Thank for your reading !
公众号:FPGA之旅