기본형태
Python: cv2.warpAffine(src, M, dsize[, dst[, flags[, borderMode[, borderValue]]]]) → dst
Parameters: |
|
---|
Translation
translation은 오브젝트의 위치를 변화시키는 것이다. 만약 (x,y) 방향으로 픽셀을 옮기고 싶다면, 로 표현할 수 있다. 그리고 매트릭스 M으로 표시해서 translation 해야한다. matrix :
Numpy 행렬을 사용해서 만들 수 있다. np.float32 그리고 cv2.warpAffine() 함수를 사용해서 만든다..
아래 코드 예는 이미지를 (100,50) 만큼 옮기는 예이다.
import cv2
import numpy as np
img = cv2.imread('picture.jpg',0) #picture.jpg 이미지를 img변수에 입력한다.
rows,cols = img.shape #이미지의 행과, 열을 rows와 cols에 넣는다.
M = np.float32([[1,0,100],[0,1,50]]) #translation M matrix
dst = cv2.warpAffine(img,M,(cols,rows)) #translation된 dst변수
cv2.imshow('img',dst)
cv2.waitKey(0)
cv2.destroyAllWindows()
주의 할 점
cv2.warpAffine() 함수의 세번째 값으로 들어 가는 범위는 (width(넓이), height(높이). width = 열의 수, height = 행의 수.
결과:
반응형
'IT > OpenCV' 카테고리의 다른 글
color space (0) | 2014.12.19 |
---|---|
cvPyrSegmentation() 함수 not found (0) | 2014.12.19 |
cvExtractSURF() 함수 에러 : OpenCV Error: The function/feature is not implemented ... (0) | 2014.12.19 |
컨볼루션 convolution(회선) 필터링 기본 (0) | 2014.12.19 |
OpenCV 함수 정리 (1) | 2014.12.19 |