题
对于一个特殊项目,我需要找到一个API/DLL/库来帮助我使用此图像的一部分创建一个大图像。例如,如果有人拍摄4张代表他周围360度的图片,他将能够使用识别某些模式的特殊算法将4个图像拼接在一起,从而创建一个大图像(Panorama)。
我知道如何在Photoshop中执行此操作,而且我知道在Internet上有很多程序。但是我希望一个可以通过编程来控制的。这可以在C,C ++或.NET中。如果您有其他语言,您也可以告诉答案,我可能会考虑写包装器。
解决方案
我在寻找同一件事,我发现 这.
它是一个.NET框架,可以操纵图像。它可以使用4个步骤缝合2个图像:
- 兴趣点检测
- 相关匹配
- 强大的同型估计
- 梯度混合
该演示一次仅覆盖2张图片的缝合,但是可以修改代码以将更多图片缝制成一张。
它易于使用,并且是 开源.
其他提示
这也是Gimp使用的 http://stitchpanorama.sourceforge.net/
SharpStitch是.NET的图像对齐和缝线库:
http://imagingshop.com/sharpstitch
它也可以创建全景马赛克。
该库可以在简单命令中进行自动缝线或执行特定任务之一(功能检测,功能匹配,捆绑调整 /优化,混合和渲染)
作为作者,我们可以根据用户的要求添加新功能和改进。我们还开发了GUI工具,例如Panorama Viewer(使用WPF)。
这是Sharpstitch库的典型输出:
不隶属于 StackOverflow