OpenCV图像拼接(1)概述

  • 操作系统:ubuntu22.04
  • OpenCV版本:OpenCV4.9
  • IDE:Visual Studio Code
  • 编程语言:C++11

算法描述

此图说明了在Stitcher类中实现的拼接模块流程。使用该类,可以配置/移除某些步骤,即根据特定需求调整拼接流程。流程中的所有构建块都可在detail命名空间中获得,可以单独组合和使用。

所实现的拼接流程与[41]中提出的非常相似。


拼接流水线

相机模型

当前在拼接流程中有两种相机模型被实现。

  • 单应性模型:期望图像间存在透视变换,实现在 cv::detail::BestOf2NearestMatcher、cv::detail::HomographyBasedEstimator、cv::detail::BundleAdjusterReproj 和 cv::detail::BundleAdjusterRay 中。
  • 仿射模型:期望具有6自由度或4自由度的仿射变换,实现在 cv::detail::AffineBestOf2NearestMatcher、cv::detail::AffineBasedEstimator、cv::detail::BundleAdjusterAffine、cv::detail::BundleAdjusterAffinePartial 和 cv::AffineWarper 中。

单应性模型对于创建由相机捕捉的照片全景图很有用,而基于仿射的模型可以用于拼接由专业设备捕捉的扫描件和物体。使用 cv::Stitcher::create 可以获得上述模型之一的预配置流程。

注意:

某些 cv::Stitcher 的详细设置可能没有意义。特别是你不应该混合使用实现仿射模型的类和实现单应性模型的类,因为它们处理的是不同的变换。

相关推荐
罗小罗同学5 分钟前
虚拟细胞赋能药物研发:AI驱动的“细胞模拟器”如何破解研发困局
人工智能·医学ai·虚拟细胞
艾醒31 分钟前
探索大语言模型(LLM):参数量背后的“黄金公式”与Scaling Law的启示
人工智能·算法
艾醒40 分钟前
探索大语言模型(LLM):使用EvalScope进行模型评估(API方式)
人工智能·算法
艾醒2 小时前
探索大语言模型(LLM):大模型微调方式全解析
人工智能·算法
IvanCodes2 小时前
RTX 4090 加速国产 AIGC 视频生成:腾讯混元与阿里千问开源模型
人工智能·开源·aigc·音视频
说私域2 小时前
定制开发开源AI智能名片S2B2C商城小程序的会员制运营研究——以“老铁用户”培养为核心目标
人工智能·小程序·开源
格林威2 小时前
常规可见光相机在工业视觉检测中的应用
图像处理·人工智能·数码相机·计算机视觉·视觉检测
循环渐进Forward2 小时前
Go语言:给AI开发装上高性能引擎
开发语言·人工智能·golang
skywalk81632 小时前
调试parlant的大模型配置,最终自己动手写了g4f的模块挂载
网络·人工智能·语言模型·tiktoken
MUTA️3 小时前
论文速览:从ConvNeXt 到 ConvNeXt V2
人工智能·深度学习