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
OpenCV中的共轭旋转变换_Opencv_Computer Vision_Projective Geometry - Fatal编程技术网

OpenCV中的共轭旋转变换

OpenCV中的共轭旋转变换,opencv,computer-vision,projective-geometry,Opencv,Computer Vision,Projective Geometry,我正在尝试对图像应用某种旋转,但它没有按预期工作。我的轮换是: [0.109285 0.527975 0.000000 -0.527975 0.109285 0.000000 0.000000 0.000000 1.000000] 这应该是围绕相机中心旋转约78度(或者Z轴,如果您愿意)。 为了构建单应性,因为没有翻译组件,我使用公式:K*R*K^-1(无限单应性) 我用来变换图像(320x240)的代码是: 其中K是: [276.666667

我正在尝试对图像应用某种旋转,但它没有按预期工作。我的轮换是:

[0.109285   0.527975    0.000000    
-0.527975   0.109285    0.000000    
0.000000    0.000000    1.000000]
这应该是围绕相机中心旋转约78度(或者Z轴,如果您愿意)。 为了构建单应性,因为没有翻译组件,我使用公式:
K*R*K^-1
(无限单应性)

我用来变换图像(320x240)的代码是:

其中K是:

[276.666667 0.000000    160.000000  
0.000000    276.666667  120.000000  
0.000000    0.000000    1.000000]
K*R*K.inv()
生成的矩阵为:

[0.109285   0.527975    79.157461   
-0.527975   0.109285    191.361865  
0.000000    0.000000    1.000000]
结果应该只是图像的旋转,但图像会像这样“缩小”:


我做错了什么?

显然我的旋转矩阵是错的。

显然我的旋转矩阵是错的。

你不能用
getRotationMatrix2D
得到变换矩阵吗?@Miki我会试试,但我也想理解为什么它不起作用,因为我以后必须在其他轴上应用旋转。好的,这只是为了排除明显的解决方案:D你能不能用
getRotationMatrix2D
得到变换矩阵?@Miki我会试试,但我也想了解为什么它不起作用,因为我以后必须在另一个轴上应用旋转。好的,这只是为了排除明显的解决方案:D
[0.109285   0.527975    79.157461   
-0.527975   0.109285    191.361865  
0.000000    0.000000    1.000000]