반응형

cv2.warpAffine 4

[파이썬 OpenCV] 어파인 변환과 투시 변환 - cv2.getAffineTransform, cv2.getPerspectiveTransform, cv2.warpPerspectivee

황선규 박사님의 , 패스트 캠퍼스 OpenCV 강의를 공부한 내용을 정리해 보았습니다. 어파인 변환과 투시 변환 1. 어파인 변환 - Affine Transform 어파인 변환은 영상의 이동, 전단, 확대, 회전을 조합할 때 직사각형이 평행사변형으로 변화하게 됩니다. 이것을 통들어서 어파인 변환이라고 합니다. 어파인 변환을 표현하는 방법은 2 X 3 행렬의 실수형에 회전, 크기, 이동 정보가 들어가 있습니다. 어파인 변환은 미지수가 6개이기 때문에 6개의 식이 필요하며 점 3개가 어디로 이동했는지 알면 행렬로 표시할 수 있습니다. 점 세개의 이동정보를 알면 어파인 행렬로 표시가 가능하며 세개의 이동정보로 마지막 점의 위치를 유추할 수 있습니다. 2. 투시 변환 - Perspective transform ..

[파이썬 OpenCV] 영상의 회전 - cv2.getRotationMatrix2D, cv2.warpAffine

황선규 박사님의 , 패스트 캠퍼스 OpenCV 강의를 공부한 내용을 정리해 보았습니다. 회전 변환 - Rotation transformation 회전 변환은 영상을 특정 각도만큼 회전시키는 변환입니다. (반시계 방향) 반시계 방향으로 세타만큼 회전시킬 때 sin, cos 함수로 표현할 수 있습니다. affine 행렬을 생성하고 affwrap 함수를 이용하여 간단히 회전 할 수 있습니다. 회전 변환을 위한 Affine 행렬을 생성하는 방법은 두 가지가 있습니다. 1. 영상의 좌측 상단 기준 회전 np.array로 Affine 행렬을 생성합니다. 생성한 Affine 행렬을 warpAffine 함수의 입력 인자로 입력해주면 됩니다. src = cv2.imread('tekapo.bmp') if src is No..

[파이썬 OpenCV] 영상의 기하학적 변환 - 전단 변환 - cv2.warpAffine

황선규 박사님의 , 패스트 캠퍼스 OpenCV 강의를 공부한 내용을 정리해 보았습니다. [파이썬 OpenCV] 영상의 기하학적 변환 - 이동 변환 - cv2.warpAffine 황선규 박사님의 , 패스트 캠퍼스 OpenCV 강의를 공부한 내용을 정리해 보았습니다. 영상의 기하학적 변환(geometric transformation)이란? 영상을 구성하는 픽셀의 배치 구조를 변경함으로써 전체 영상 deep-learning-study.tistory.com 이전 포스팅에서 영상의 이동 변환에 대해서 알아보았습니다. 이번에는 전단 변환에 대해 공부하겠습니다. 영상의 전단 변환 - Shear transformation 영상의 전단 변환은 층 밀림 변환이라고도 합니다. 이동을 하는데 모든 픽셀들이 동일하게 이동하는 ..

[파이썬 OpenCV] 영상의 기하학적 변환 - 이동 변환 - cv2.warpAffine

황선규 박사님의 , 패스트 캠퍼스 OpenCV 강의를 공부한 내용을 정리해 보았습니다. 영상의 기하학적 변환(geometric transformation)이란? 영상을 구성하는 픽셀의 배치 구조를 변경함으로써 전체 영상의 모양을 바꾸는 작업입니다. 영상의 모양 자체를 변환하고 좌표에 대한 개념이 필요합니다. 기하학적 변환이 필요한 이유 1. 입력 영상 크기가 제한되어 있어 영상 크기를 축소해야 하는 경우. 2. 객체가 영상의 정중앙에 있어야 하는 경우. 3. 회전이 되어 있는 영상을 똑바로 보정 이 외에도 여러가지 상황에서 영상의 기하학적 변환이 필요합니다. 1. 영상의 이동 변환 - Translation transformation 이동 변환은 shift라는 용어도 많이 씁니다. 가로 또는 세로 방향으로..

반응형