С учетом коэффициентов искажения D = k1, k2, p1, p2, k3 модели с точечным отверстием, которая определяется радиальным и тангенциальным искажением.Как исказить изображение с этими коэффициентами?Я знаю о функции cv2.undistort () .Может кто-нибудь объяснить мне, как реализовать функцию искажения для выполнения итеративной минимизации?
# TODO: Iterative minimization required
r2 = x_ * x_ + y_ * y_
# Remove tangential distortion
x_tangential = x_ - (2 * distort_coeffs[2] * x_ * y_ + distort_coeffs[3] * (r2 + 2 * x_ * x_))
y_tangential = y_ - (distort_coeffs[2] * (r2 + 2 * y_ * y_) + 2 * distort_coeffs[3] * x_ * y_)
# Remove radial distortion
x = x_tangential / (1 + distort_coeffs[0] * r2 + distort_coeffs[1] * r2 * r2 + distort_coeffs[4] * r2 * r2 * r2)
y = y_tangential / (1 + distort_coeffs[0] * r2 + distort_coeffs[1] * r2 * r2 + distort_coeffs[4] * r2 * r2 * r2)
cam_coords_undistorted = torch.cat([x, y, ones], 1)