使用针孔相机模型时,像素位置大于图像尺寸或为负

5ビュ(過去30日間)
大家好
我有一个简单的代码使用针孔相机模型的问题。问题是,当我试图在场景中某个点的图像平面中定位像素位置时,它会给我奇怪的结果,如负值或图像维度的数字。这是我的代码,其中x,y和z是我感兴趣的点camx的坐标,camy和camz是相机在场景中的坐标,单位都是mm。图像分辨率为1440* 960像素(宽*高),焦距为40毫米。旋转矩阵是单位,因为相机正对着场景如图所示。从上面的坐标,点应该在相机的正前方(Y是相机到房子的距离,X是房子正面视图的正中间,z是相机的高度,如下图所示),因此像素应该大致在图像的中间,但结果是[w,h]=[2970.6, 636.2]。
我想我在翻译矩阵中做错了什么,但我不知道是什么,
请帮忙
mathwork.jpg
x = 1.067621626992524 e + 03;
y = -3.718505419300001 e + 03;
z = 2848.17;
camx = -1871.14;
camy = -7763.71;
camz = 2848.17;
F = 40;%以毫米为单位
Pixelox = 720;
Pixeloy = 480;
Pixelx = 0.025;
pixe = 0.025;
K=[F/Pixelx 0 0;0 F/Pixelx 0;Pixelox Pixeloy 1];
R= [1 0 0;0 1 0;0 0 1];
T =[x-camx y-camy z-camz];
P = [R; t] * K;
tem= [x y z 1]*P;
w = tem (1) / tem (3);
h = tem (2) / tem (3);

採用された回答

马特·J
马特·J 2018 年 12 月 28 日
編集済み:马特·J 2018 年 12 月 28 日
以下是我从你的描述中推断出的一些错误:
  1. 你说这个点在“摄像机正前方”,Y表示从摄像机到房子的距离。这是不是意味着点的y坐标应该是正的而(x,z)应该都近似等于camx和camz?你所展示的数据并非如此。
  2. 如果Y轴从摄像机指向房子,那么R矩阵就不应该是单位矩阵。R的第一列和第二列应该分别指向图像的w轴和h轴。但是当R=eye(3)时,R的第二列反而是沿着y轴指向房子,而不是沿着h轴。
  3. 相机参数t不应该依赖于任何特定的(x,y,z)。我觉得你的意思是,
t = [-camx -camy, -camz]。
6件のコメント
凯撒
凯撒 2019 年 2 月 13 日
一如既往,你的反应如此迅速,非常感谢。根据你的建议改变R效果不是很好,特别是H (F=-40 &f=40)。但是,将第一列更改为(-1)也可以。当YCam

サ▪▪ン▪▪ンしてコメントする。

その他の回答(2件)

图像分析
图像分析 2018 年 12 月 29 日
不知道你说的“Y是相机到房子的距离,X在房子正面视图的中间,z是相机的高度,如下图所示”的意思是什么? X和Y不是到光轴的距离吗?如果不是,你是否定义了一个新的参照系,其中光轴不在(0,0)?(这会使事情复杂化。)
你说“x,y和z是我感兴趣的点的坐标camx,camy和camz是场景中摄像机的坐标”。让我们把事情搞清楚。哪个集合在 场景 (在针孔前面)和哪一套是在 “焦平面” 现场的图像落在哪里?
同时你指定了这两个,这样就把其他的东西都固定下来了。
你说"F=40;但是对于针孔相机来说,没有焦距。它是一个针孔,所以任何地方的所有东西都是聚焦的,不管它在针孔后面有多远。
这个旋转矩阵是什么意思?既然是针孔相机,为什么会有旋转?如果场景和焦平面平行,就不会有旋转矩阵。你的场景是平面吗?你的场景或焦平面不是垂直于光轴的?
你到底想搞清楚什么?h ?w ?R ?
1件のコメント
凯撒
凯撒 2018 年 12 月 29 日
在我的问题中谈论y和x是为了解释轴,它也显示在图像一侧的小箭头中。
我不知道你说的设置新框架是什么意思,因为我不是这方面的专家,但是,我试图遵循这个理论:
因此,根据该主题,我应该有相机的坐标(camx,camy和camz),兴趣点坐标(x,y,z),相机焦距,像素大小在世界联合寻找像素在像平面上的[w,h]。
我在代码中尝试了,但没有工作,因为我不确定T(翻译矩阵)和 马特·J 指出我在R矩阵中有一些错误。
我希望你现在情况有所好转。
提前感谢您的回复

サ▪▪ン▪▪ンしてコメントする。


凯撒
凯撒 2020 年 1 月 25 日
編集済み:凯撒 2020 年 1 月 25 日
你好,Matt J
我已经很长时间没有接受这个答案了,一切都很顺利。现在,我面临着另一个问题,即如何构建旋转矩阵,在情况下,摄像机不是看着直,是围绕任何轴旋转?例如,现在我正看着绕z轴20度的方向。
我不知道我是否可以在这里发布一个链接,但我已经提交了一个问题,与这个问题有关,而不是关于相机本身。在这里 链接
提前谢谢你

カテゴリ

了解更多IP摄像机的M金宝appATLAB支持包帮助中心而且文件交换

社区寻宝

在MATLAB Central中找到宝藏,并发现社区如何帮助您!

开始狩猎!

翻译的