
Image Affine Matrix Get은 컴퓨터 비전에서 이미지 변형을 위한 기하학적 변환 매트릭스를 얻는 방법입니다.
이미지 변형 매트릭스를 얻기 위해서는 다음과 같은 과정을 거칩니다.
1. 점 선택: 변형을 적용할 이미지의 두 점을 선택합니다.
2. 점의 좌표: 선택한 두 점의 좌표를 계산합니다.
3. 변환 매트릭스 계산: 선택한 두 점의 좌표와 이미지의 원점을 연결하는 선분의 기울기를 사용하여 변환 매트릭스를 계산합니다.
이미지 변형 매트릭스를 얻은 후, 이 매트릭스를 사용하여 이미지 변형을 다음과 같은 방법으로 수행할 수 있습니다.
1. 크기 변경: 변형 매트릭스를 사용하여 이미지의 크기를 변경할 수 있습니다. 예를 들어, 이미지의 너비를 2배로 확대하고, 높이를 1.5배로 확대하는 방법은 다음과 같습니다.
#hostingforum.kr
python
import cv2
import numpy as np
# 이미지 로드
img = cv2.imread('image.jpg')
# 변형 매트릭스 생성
scale_matrix = np.array([[2, 0, 0], [0, 1.5, 0], [0, 0, 1]])
# 이미지 변형
img_transformed = cv2.warpAffine(img, scale_matrix, (img.shape[1], img.shape[0]))
# 변형된 이미지 출력
cv2.imshow('Transformed Image', img_transformed)
cv2.waitKey(0)
cv2.destroyAllWindows()
2. 회전: 변형 매트릭스를 사용하여 이미지의 회전을 수행할 수 있습니다. 예를 들어, 이미지의 회전을 45도 수행하는 방법은 다음과 같습니다.
#hostingforum.kr
python
import cv2
import numpy as np
# 이미지 로드
img = cv2.imread('image.jpg')
# 변형 매트릭스 생성
rotation_matrix = cv2.getRotationMatrix2D((img.shape[1]//2, img.shape[0]//2), 45, 1)
# 이미지 변형
img_transformed = cv2.warpAffine(img, rotation_matrix, (img.shape[1], img.shape[0]))
# 변형된 이미지 출력
cv2.imshow('Transformed Image', img_transformed)
cv2.waitKey(0)
cv2.destroyAllWindows()
이러한 예제를 통해 이미지 변형 매트릭스를 얻은 후, 이 매트릭스를 사용하여 이미지 변형을 수행할 수 있습니다.
2025-07-24 16:39