计算机视觉笔记(针孔相机成像模型)

前言

首先吐槽一下这个坑爹的图,搞得我看了半天没看明白,真的是天才才能想到这种方式来表示这三个坐标系,当然要是我想错了,那是我的错.(在此鸣谢肖总)

正文

首先讲一下三个坐标系分别是那三个坐标系,他们分别是:

World coordinate system (3D space)
Camera coordinate system (3D space)
Retinal coordinate system (2D space)
翻译成中文就是,世界坐标系,相机坐标系,2D成像坐标系,显而易见前面两个是3D的,最后一个是2D的,甚至他的名字里已经有2D了()
然后就要请出来我们这个最为坑爹的示意图了, 麦克阿瑟曾经说过,如果我的军队用的是这种示意图,我将连美国都走不出去,总之,如下:
这张图里,蓝色的坐标系是世界坐标系,右侧的黑色坐标系是相机坐标系,灰色的uv坐标系是2D成像坐标系,你可能觉得蓝色的坐标系和灰色的坐标系重合了,但是实际上不是这样的!!我反正是没想明白这样做的必要行,为什么不把这两个坐标系分开呢!!!???当然要是真有什么特殊考量是我的错.然后就到了具体的操作部分:

1.将目标的坐标系从世界坐标系转换到相机坐标系:

这里也是比较逆天的图形展示,反正我是看了半天没看明白这张图里这一步是怎么个表示法,目前我觉得比较合理的一种理解方法是,这一步的展示在这个图里,意味着,目标点使用的坐标系从蓝色坐标系转换成了黑色坐标系也就是相机中的坐标系,额,我不好说.然后这里的转换部分就是进行欧式变换,主要是旋转然后平移,这些通过矩阵的相乘和相加来实现:

2.然后就是将3D相机坐标系中的坐标转换到2D成像坐标系中:

这一步的话是使用了相似原理:

f/Zc就是相似比,通过这样的处理将3D的坐标射影到了2D的成像坐标中:

这张图显然更好理解(),同时在这个处理过程之中还会进行归一化处理,让f=1,而这个1是没有量纲的,这就是所谓的归一化.

结语

一个简单的小总结,有问题请指正

猜你喜欢

转载自blog.csdn.net/m0_73872315/article/details/134150328