OpenCV를 사용하여 어안 (fisheye) 이미지를 왜곡 시키려고합니다.
OpenCV를 사용하여 자른 어안 (fistheye) 이미지를 왜곡시키는 법
img = cv2.imread('img.jpeg') #image path of pic to distort
h,w = img.shape[:2]
Knew = cv2.fisheye.estimateNewCameraMatrixForUndistortRectify(K,D,(w,h),None)
Knew[(0,1), (0,1)] = .3* Knew[(0,1), (0,1)]
mapx, mapy = cv2.fisheye.initUndistortRectifyMap(K,D,None,Knew,(w,h),5)
img_undistorted = cv2.remap(img, mapx, mapy, cv2.INTER_LINEAR)
cv2.imshow('undistorted', img_undistorted)
cv2.waitKey(0)
cv2.destroyAllWindows()
: 이미 카메라를 보정하고, 또한 다음과 같은 코드를 사용하여 괜찮은 왜곡되지 않은 이미지를 받고 (그냥 관련 부분을 게시)
이 사진은 데모 용입니다. 어안 렌즈의 매핑 기능을 사용하여 오른쪽에서 자르는 지점을 결정했습니다. 그러나 위와 동일한 코드를 사용하면 출력이 정말 이상하게 왜곡 된 그림이됩니다.
나는 또한 먼저 변형되지 않은 다음 자르기에 대해 생각해 봤지만, 나는 이런 식으로 자르려면 정확히 계산할 수 없습니다. 그래서 먼저 이미지를 잘라야합니다.
그래서 대칭으로 자른 어안 (fisheye) 이미지가 올바르게 왜곡되지 않습니까?
그래서 당신은 내가 검은 색 픽셀로 자른 영역을 "작성"의 이미지 만 종류를 자르한다는 의미는? – sybilcut
그건 내가 시도할만한 것입니다. –
그것은 나를 위해 작동하지 않았다. (나는 단지 몇 가지 다른 매개 변수를 튜닝하려고 시도 할 것이다 .... – sybilcut