OpenCVを使用して魚眼画像を歪ませようとしています。 OpenCVを使用して切り取った魚眼画像を歪ませる方法
:私はこのような魚眼画像をトリミングする必要が今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()
:私はすでにカメラを校正し、また次のコードを使用してまともな歪みのない画像を取得(私は、関連する部分を掲載しました)
これらの写真はデモンストレーション用です。 私は魚眼レンズの写像関数を使って、右側で作った点を決めました。しかし、上記と同じコード(と同じカメラマトリックス)を使用すると、出力は本当に奇妙な歪んだ画像になります。
私はまた、最初にゆがんでいないことを考えていますが、私はこのように切り抜かなければならない点を正確に計算することはできません。だから私はまず画像を切り抜かなければならない。
どのように対称的にトリミングされた魚眼画像を正しく歪ませないのですか?
ので、あなたは、私は画像をトリミングする必要があり意味が、一種の黒画素で切り出された領域であることを「記入」? – sybilcut
それは私が試してみたいことです。 –
それは私のために働いていませんでした:(私はちょうどいくつかの他のパラメータを調整しようとします.... – sybilcut