더북(TheBook)

회전 변환

이미지 회전 변환은 이미지를 주어진 각도만큼 회전시키는 작업을 말합니다. OpenCV에서는 cv2.getRotationMatrix2D 함수를 사용하여 회전 변환 행렬을 생성하고, cv2.warpAffine 함수를 사용하여 실제로 이미지를 회전시킵니다.

cv2.getRotationMatrix2D 함수는 center 인수로 어떤 점을 기준으로 회전시킬지를, angle 인수로 얼마나 회전시킬지를, scale 인수로 결과 이미지의 배율을 어떻게 할지를 지정하여 다음처럼 해당 변환 행렬을 반환합니다.

def getRotationMatrix2D(center: Point2f, angle: float, scale: float) -> MatLike

cv2.warpAffine 함수는 앞에서 만들어진 변환 행렬과 이미지를 받아 다음처럼 실제 회전 변환을 수행합니다.

height, width = image.shape
matrix = cv2.getRotationMatrix2D((width/2, height/2), 90, 1)
result = cv2.warpAffine(image, matrix, (width, height))
cv2_imshow(result)
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.