3

我想使用 python 拼接多个(5 或 6 个)图像。我是 python 新手,但我想使用它,因为它在服务器上运行并且是开源的。OpenCV 似乎非常有能力做到这一点,并且将是我的首选,但这些函数主要是在 C++ 中,我找不到任何在 python 中执行此操作的示例(尽管它应该能够)。我找到了这个链接:http ://richardt.name/teaching/supervisions/vision-2011/practical/但我认为我没有能力做这个练习。

我还发现了很多关于 panotools 和 Hugin 的信息。Hugin 应该能够使用 HSI(Hugin 脚本接口)进行拼接,但文档非常稀缺。我找到的示例应该可以工作,但是我无法让 Hugin 和 HSI 在 python 中工作,没有关于如何安装/导入库的说明。

有没有人可以帮助我解决这个问题?我来自 php 编程,对 Python、OpenCV 和 Hugin 非常陌生。

非常感谢

4

2 回答 2

1

如果您不必使用python,则单独使用hugin可以做到这一点。 有关一些相关命令,请参见此处。这是一个可以从终端运行的示例:

$ cd to/your/images
$ pto_gen -o project.pto *.jpg
$ cpfind --multirow -o project.pto project.pto
$ celeste_standalone -i project.pto project.pto
$ hugin_executor --stitching --prefix=my_panorama project.pto

我对 3 个镜头进行了快速的健全性检查,看起来很合理。我正在使用hugin 2016.0.0。

于 2016-07-14T04:26:21.797 回答
-1

我认为这是您想要的代码

import cv2
import numpy as np

img1 = cv2.imread('Bird1.jpg')
img2 = cv2.imread('Bird2.jpg')

img3 = np.hstack((img1,img2))
cv2.imwrite('Bird3.jpg',img3)

注意:这两个输入图像的大小(高度,宽度)应该相同。
输入图像:-

在此处输入图像描述


输出图像:-
在此处输入图像描述

于 2014-02-17T10:33:01.510 回答