- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
RANSAC 用于查找与两个图像相关的单应性矩阵。为了计算矩阵,我们需要至少 4 个对应关系。同形矩阵是描述任何透视变换的通用 3*3 矩阵。如果我们只给出3个对应关系,那么如何计算同源矩阵?由于两幅图像是仿射相关的,因此我们可以仅使用3个对应关系来计算矩阵。
最佳答案
寻找有关该主题的文献的第一个地方可能是 Hartley 和 Zisserman 所著的计算机视觉中的多 View 几何一书。
从 3 个对应关系中,您可以找到大小为 3x3 的仿射单应性 A,它将每个 2D 图像点 p 映射到每个点 q以下方程(假设 p 和 q 是齐次形式的 2D 点):
A*p = q
要找到匹配三组点对的A:{p1, p2, p3} -> { q1, q2, q3 },您只需堆叠两个矩阵 P 和 Q 中的点,大小均为 3x3。
矩阵'P'使得单元格P(1,i)和P(2,i)应包含第一个和第 i 个点 p 的第二个坐标。矩阵 Q 使得单元格 Q(1,i) 和 Q(2,i) 应包含 Q(1,i) 的第一个和第二个坐标em>i-第 q 点。
单元格 P(3,i) 和 Q(3,i),对于 i=1..3 将包含 1 (为齐次坐标)。
一旦形成这些矩阵,您可以通过求解找到A:
A*P = Q
即,简单地说:
A = Q*P.inv()
但请注意,您正在寻找的是投影平面单应性,并且您至少需要 4 个点来计算它,并且需要不同的方法。您必须解方程:
H * p α q
其中 H 是您要查找的单应性,α 表示比例。要从四个对应关系中查找 H,您必须使用 Direct Linear Transformation方法。不过,在 OpenCV 中您可以使用 findHomography找到H。
希望对您有所帮助,问候。
关于matlab - 使用 Ransac 的仿射模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23461590/
我是一名优秀的程序员,十分优秀!