gpt4 book ai didi

python - 重建:为什么不扭曲图像并标准化坐标?

转载 作者:行者123 更新时间:2023-12-02 17:37:14 26 4
gpt4 key购买 nike

从教程中:https://programtalk.com/vs2/?source=python/8176/opencv-python-blueprints/chapter4/scene3D.py
我不明白为什么他们首先不扭曲图像

 # undistort the images
self.img1 = cv2.undistort(self.img1, self.K, self.d)
self.img2 = cv2.undistort(self.img2, self.K, self.d)

和: 计算基本矩阵
def _find_fundamental_matrix(self):
self.F, self.Fmask = cv2.findFundamentalMat(self.match_pts1,
self.match_pts2,
cv2.FM_RANSAC, 0.1,0.99)

def _find_essential_matrix(self):
self.E = self.K.T.dot(self.F).dot(self.K)

以及 标准化坐标:
first_inliers = []
second_inliers = []
for i in range(len(self.Fmask)):
if self.Fmask[i]:
# normalize and homogenize the image coordinates
first_inliers.append(self.K_inv.dot([self.match_pts1[i][0],
self.match_pts1[i][1], 1.0]))
second_inliers.append(self.K_inv.dot([self.match_pts2[i][0],
self.match_pts2[i][1], 1.0]))

还是?还是我对这里的理解有误?
可以请我帮忙吗?

最佳答案

第一步 undistort 可以做很多事情来扭转由小型相机镜头引起的典型变形。有关更多背景,请参见distortion (optics)上的Wikipedia文章。

统一坐标的最后一步是完全不同的事情。 Wikitia上homogenous coordinates上的文章对此进行了解释,但基本思想是,您添加了一个额外的伪轴,该轴可让您使用链式简单矩阵乘法进行所有仿射和投影变换,然后最后投影回3D。规范化只是您使该数学变得更简单的一个步骤-基本上,您希望您的额外坐标以1.0开始(乘以投影范数的倒数)。

关于python - 重建:为什么不扭曲图像并标准化坐标?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49621780/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com