1

好的解决了。首先,我将使用 Matlab 工具和 chessboardthingie 来获取内在参数。我将使用 cv::solvePnP()

是的,我使用了搜索,但不幸的是它并没有帮助我很多。

正如标题所说,我必须在现实世界中找到相机坐标。但我也面临一些关于 opencv 命令的问题。到目前为止,我知道图像中的一些点和相应的世界坐标。(已知最坏情况 6 分)

为了获得相机坐标,我想到了使用公式:

transp(x,y,z)= - transp(R)*t ,其中 R 和 t 是外部参数

所以现在我的问题是:如何计算 R 和 t ?我的意思是是否存在解决此问题的 opencv 函数?因为实际上有很多相机校准功能。还是我必须先计算内在参数?

编辑:这是我的意思的功能:http: //opencv.willowgarage.com/documentation/python/calib3d_camera_calibration_and_3d_reconstruction.html#calibratecamera2

但我不知道参数应该是什么样子。如何手动初始化例如 3x6 矩阵,例如 cv::Mat ([[x1] [y1] [z1]] .... [[x6] [y6] [z6]])

4

1 回答 1

0

R 和 T 矩阵是立体系统中两个摄像机视图之间的旋转和平移

据推测,您可以找到相机相对于单个目标的位置——一旦你有一个校准的相机和一个已知的目标——但软件的描述是针对一个立体对的。

openCV 书的第 11 章和第 12 章给出了很好的描述

于 2012-02-24T17:23:02.747 回答