Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用阿鲁科标记获取相机位置和旋转_Python_Opencv_Camera_Aruco - Fatal编程技术网

Python 使用阿鲁科标记获取相机位置和旋转

Python 使用阿鲁科标记获取相机位置和旋转,python,opencv,camera,aruco,Python,Opencv,Camera,Aruco,我使用函数cv.aruco.estimatePoseSingleMarkers()获得rvec和tvec。 使用这两个向量,如何获得相对于Aruco标记的相机姿势 while(True): ret,frame=cap.read() 灰色=cv2.CVT颜色(边框,cv2.COLOR\u BGR2GRAY) aruco_dict=aruco.Dictionary_get(aruco.dict_aruco_原件) parameters=aruco.DetectorParameters\u creat

我使用函数
cv.aruco.estimatePoseSingleMarkers()
获得
rvec
tvec
。 使用这两个向量,如何获得相对于Aruco标记的相机姿势

while(True):
ret,frame=cap.read()
灰色=cv2.CVT颜色(边框,cv2.COLOR\u BGR2GRAY)
aruco_dict=aruco.Dictionary_get(aruco.dict_aruco_原件)
parameters=aruco.DetectorParameters\u create()
角点、ID、拒绝点=aruco.检测标记(灰色、aruco_dict、参数=参数)
font=cv2.font\u HERSHEY\u SIMPLEX
如果np.all(ID!=无):
#姿态估计
rvec,tvec,u=阿鲁科估计位置单标记(角[0],0.1,mtx,距离)

rvec
是标记相对于相机帧的旋转。您可以使用内置的将
rvec
转换为旋转矩阵。然后得到这个矩阵的逆矩阵(这是一个旋转矩阵,所以逆矩阵是矩阵的转置)。这是相机相对于标记的旋转


tvec
的大小不受旋转的影响。如果你需要考虑相机相对于标记的方向,只需使用“<代码> TVEC < /代码>的负值。

< P> <代码> RVEC < /代码>是标记相对于相机帧的旋转。您可以使用内置的将
rvec
转换为旋转矩阵。然后得到这个矩阵的逆矩阵(这是一个旋转矩阵,所以逆矩阵是矩阵的转置)。这是相机相对于标记的旋转

tvec
的大小不受旋转的影响。如果你需要考虑相机相对于标记的方向,只需使用“<代码> TVEC < /代码>的负值。