Perspective Transformation

Kategori: Python / OpenCV , 07 Ekim 2019 , JanFranco


Farklı bir açıdan çekilmiş fotoğrafı, başka bir açıya göre çekilmiş hale getireibiliriz. Yani perspektifini değiştirebiliriz. Görelim:


import cv2
import numpy as np

image = cv2.imread('scan.jpg')

cv2.imshow('Original', image)
cv2.waitKey(0)

points_A = np.float32([[320, 15], [700, 215], [85, 610], [530, 780]])
points_B = np.float32([[0, 0], [420, 0], [0, 594], [420, 594]])

M = cv2.getPerspectiveTransform(points_A, points_B)

warped = cv2.warpPerspective(image, M, (420, 594))

cv2.imshow('warpPerspective', warped)
cv2.waitKey(0)
cv2.destroyAllWindows()
İlk olarak points_A adında bir matris oluşturduk. Bu matriste perspektifini değiştirmek istediğimiz objenin köşelerinin koordinat bilgileri mevcut. İkinci bir matris tanımladık. Bu matriste, objenin olmasını istediğimiz koordinatlarını girdik. getPerspectiveTransform methodu ile points_A matrisindeki noktaları, points_B matrisindeki noktalara döndürdük. Daha sonra warpPerspective methodu ile perspektif dönüşümünü gerçekleştirdik. warpPerspective methodu 3. parametresinde, oluşacak resmin boyutunu ister.


Sonraki Yazı: Live Scetch with Webcam
Yorumlar

Henüz bir yorum bulunmuyor.
Yorum bırakın