【发布时间】:2011-12-14 02:41:45
【问题描述】:
我想使用 opencv 从像素/屏幕坐标中找到相机坐标。
假设我的相机经过校准,我得到了内在参数(焦距和主点的矩阵) 和使用opencv的外在参数(旋转和平移矩阵)。然后this website 用于 3d 用 opencv 重建 说:
s * [q 1]^{Transpose} = [K] * [([R] * P) + T]
其中[q] 是二维像素坐标,s = 1,K 是 (3x3) 固有矩阵,R 是 (3x3) 旋转矩阵,P 是
(3x1) 在世界坐标中,T 是 (3x1) 平移矩阵。
所以:
[R]^{-1} * ( [ [K]^{-1} * [q 1 ]^{Transpose} ] - [T] ) = [P]
然后:
[U] = ([R] * [P]) + [T]
[U] 在相机坐标中是 (3x1)。所以现在像素坐标中的[q] 将是
转换为相机坐标[U]。
像这样将像素坐标转换为相机坐标是否正确?旋转矩阵 ([R]) 或内在矩阵 ([K]) 是否总是可逆的?或者是
有时旋转矩阵和/或固有矩阵不能反转?
可以确认一下吗?
【问题讨论】:
标签: opencv camera screen coordinate