[hide]
概念介绍
三类变换
- 透视变换:不能保证物体形状的“平行性”。仿射变换是透视变换的特殊形式。透视变换是将一个平面投影到另一个平面,简单理解就是把一张图片投影到另一张图片,求的是同一张图片到它的投影图片之间的变换。
- 仿射变换:保证物体形状的“平直性”和“平行性”,一般为平移、旋转等操作
- 单应性变换:由三维空间拍摄两张不同的图片来获取关键点,求的是该图片到另一个角度图片的变换,但是变换过后还是这张图片,没有变成另一个角度的图片,变换过后和另一张图片还是不同,因为三维空间得到的背景不同,所以变换过后并不能得到获取关键点对的另一张图片。
透视变换
将2D矩阵图像变换成3D的空间显示效果
公式推导:![图片[1] - 单应矩阵 - 小锋学长生活大爆炸 图片[1] - 单应矩阵 - 小锋学长生活大爆炸](http://xfxuezhang.cn/usr/uploads/2022/01/2892462709.png)
因此,知道透视变换矩阵M后,变换顺序为:
x, y, z = np.dot(M, np.array([5, 10, 1]).reshape(3, -1))
x = x/z
y = y/z
z = z/z单应性变换
$$s \left[ \begin{array} { l } { x ^ { \prime } } \\ { y^ { \prime } } \\ { 1 } \end{array} \right] = H \left[ \begin{array} { l } { x } \\ { y } \\ { 1 } \end{array} \right] = \left[ \begin{array} { l } { h _ { 11 } } & { h _ { 12 } } &{h_{13}} \\ { h _ { 21 } } & { h _ { 22 } } &{h_{23}}\\ { h _ { 31 } } & { h _ { 32 } }&{h_{33}} \end{array} \right] \left[ \begin{array} { l } { x } \\ { y } \\ { 1 } \end{array} \right]$$
单应矩阵H:![图片[2] - 单应矩阵 - 小锋学长生活大爆炸 图片[2] - 单应矩阵 - 小锋学长生活大爆炸](http://xfxuezhang.cn/usr/uploads/2022/01/816925268.png)
在坐标平面中看起来:![图片[3] - 单应矩阵 - 小锋学长生活大爆炸 图片[3] - 单应矩阵 - 小锋学长生活大爆炸](http://xfxuezhang.cn/usr/uploads/2022/01/791275064.png)
图像转换:![图片[4] - 单应矩阵 - 小锋学长生活大爆炸 图片[4] - 单应矩阵 - 小锋学长生活大爆炸](http://xfxuezhang.cn/usr/uploads/2022/01/3787430379.png)
相机参数:![图片[5] - 单应矩阵 - 小锋学长生活大爆炸 图片[5] - 单应矩阵 - 小锋学长生活大爆炸](http://xfxuezhang.cn/usr/uploads/2022/01/1810344287.png)
坐标转换
![图片[6] - 单应矩阵 - 小锋学长生活大爆炸 图片[6] - 单应矩阵 - 小锋学长生活大爆炸](http://xfxuezhang.cn/usr/uploads/2022/01/3516409645.png)
![图片[7] - 单应矩阵 - 小锋学长生活大爆炸 图片[7] - 单应矩阵 - 小锋学长生活大爆炸](http://xfxuezhang.cn/usr/uploads/2022/01/3831180203.png)
[/hide]
变换
IPM 逆透视变换
参考文献
1、Target location of unmanned aerial vehicles based on the electro-optical stabilization and tracking platform
2、https://juejin.cn/post/6990343357881352199