對像素點直接操作來實現仿射變換
第一部分:圖片倒置
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 !