gpt4 book ai didi

c++ - C 中的 OpenCV 拼接程序,如何进行像素变换?

转载 作者:太空狗 更新时间:2023-10-29 21:47:42 27 4
gpt4 key购买 nike

因此,我设法使用 opencv 的拼接例程在 C++ 中实现了全景拼接。

拼接完成后,输出显示初始内在参数,每个拼接的相机参数显示为 3x3 矩阵。

这些参数是什么意思?

我想找出从每个单独的图像到生成的全景图的像素映射。偏移的像素是多少。这可能是一个二维 vector ,因为像素先向左或向右平移,然后向上或向下平移。

如何获取输出全景图中每个像素的数据?

最佳答案

3x3 矩阵只是二维仿射变换(缩放+旋转+平移)的一种表示。

要将一张图像上的 (x1, y1) 转换为另一张具有拼接矩阵 M 的图像上的 (x2, y2),只需执行以下操作

 (x1, y1, 1) = M * (x2, y2, 1)

其中 * 是通常的矩阵 vector 乘法。

请参阅此处 (Wiki, Affine transform)关于此类矩阵和齐次(三重)坐标。

关于c++ - C 中的 OpenCV 拼接程序,如何进行像素变换?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12695853/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com