2022年 11月 8日

python_图像去畸变/图像矫正

说明:

  • 输入:畸变图像
  • 输出: 去畸变图像

代码:

  1. import numpy as np
  2. from cv2 import cv2 as cv
  3. img_rgb = "1.jpg"
  4. R = np.eye(3)
  5. img_size = (1920, 1080)
  6. camera_matrix = np.array( [788.82312, 0, 987.54279, 0, 787.83112, 577.85284, 0, 0, 1, ]).reshape([3, 3])
  7. distortion_coefficients = np.array( [-0.025751632, -0.017036539, 0.01532208, -0.0057064975]).reshape([4, 1])
  8. mapx, mapy = cv.fisheye.initUndistortRectifyMap( camera_matrix, distortion_coefficients, R, camera_matrix, img_size, cv.CV_32FC1)
  9. srcImg = cv.imread(img_rgb)
  10. # srcImg = cv.imread("camera.bmp")
  11. resultImg = cv.remap(srcImg, mapx, mapy, cv.INTER_LINEAR, cv.BORDER_CONSTANT)
  12. cv.imwrite("result_1.png", resultImg)

结果: