根据特征进行全景图像拼接

简介: 根据特征进行全景图像拼接。

一、前言
使用基于特征的图像配准技术自动创建全景图。
特征检测和匹配是许多计算机视觉应用(如图像配准、跟踪和对象检测)中使用的强大技术。在此示例中,基于特征的技术用于自动拼接一组图像。图像拼接过程是基于特征的图像配准的扩展。不是注册一对图像,而是连续注册多个图像对,以形成全景图。
二、步骤 1 - 加载图像
此示例中使用的图像集包含建筑物的图片。这些是用未校准的智能手机摄像头拍摄的,通过沿着地平线从左到右扫描相机,捕捉建筑物的所有部分。

如下图所示,图像相对不受任何镜头畸变的影响,因此不需要相机校准。但是,如果存在镜头失真,则应在创建全景图之前校准相机并使图像不失真。

三、步骤 2 - 注册映像对
要创建全景图,请首先使用以下过程注册连续的图像对:

此时,中的所有转换都是相对于第一个图像的。这是对图像注册过程进行编码的便捷方法,因为它允许对所有图像进行顺序处理。但是,使用第一张图像作为全景图的开始并不能产生最美观的全景图,因为它往往会扭曲构成全景图的大多数图像。通过修改变换,可以使场景中心失真最少,从而创建更好的全景图。这是通过反转中心图像的变换并将该变换应用于所有其他图像来实现的。
首先使用 projtform2d 方法查找每个转换的输出限制。然后,输出限制用于自动查找大致位于场景中心的图像。
接下来,计算每个变换的平均 X 限制并找到位于中心的图像。此处仅使用 X 限制,因为已知场景是水平的。如果使用另一组图像,则可能需要同时使用 X 和 Y 限制来查找中心图像。最后,将中心图像的逆变换应用于所有其他图像。
四、步骤 3 - 初始化全景图
现在,创建一个初始的、空的全景图,所有图像都映射到其中。
使用该方法计算所有转换的最小和最大输出限制。这些值用于自动计算全景图的大小。
五、步骤 4 - 创建全景图
使用 imwarp 将图像映射到全景图中并使用视觉。AlphaBlender将图像叠加在一起。
2.png
1.png

六、结论
使用基于特征的图像配准技术自动创建全景图。可以在示例中结合其他技术,以改善全景图像的混合和对齐。

目录
相关文章
|
1月前
三维手部关键点
三维手部关键点
|
1月前
|
机器学习/深度学习 自动驾驶 机器人
【论文速递】BEVFormer: 通过时空变换器从多相机图像中学习BEV表示
【论文速递】BEVFormer: 通过时空变换器从多相机图像中学习BEV表示
|
9月前
|
机器学习/深度学习 算法 固态存储
【图像配准】基于SSD、SAD、NCC算法实现三维图像立体配准和融合附matlab代码
【图像配准】基于SSD、SAD、NCC算法实现三维图像立体配准和融合附matlab代码
|
1月前
|
机器学习/深度学习 监控 算法
计算机视觉实战项目(图像分类+目标检测+目标跟踪+姿态识别+车道线识别+车牌识别)
计算机视觉实战项目(图像分类+目标检测+目标跟踪+姿态识别+车道线识别+车牌识别)
69 1
|
编解码 数据可视化 API
如果实现图像人脸融合?
本文介绍的API接口是阿里云视觉智能开放平台的图像人脸融合,用以演示。
829 1
如果实现图像人脸融合?
|
1月前
|
传感器 机器学习/深度学习 自动驾驶
【多模态融合】CRN 多视角相机与Radar融合 实现3D检测、目标跟踪、BEV分割 ICCV2023
本文介绍使用雷达与多视角相机融合,实现3D目标检测、3D目标跟踪、道路环境BEV分割,它是来自ICCV2023的。CRN,全称是Camera Radar Net,是一个多视角相机-雷达融合框架。 通过融合多视角相机和雷达的特性,生成语义丰富且空间精确的BEV特征图。实现3D物体检测、跟踪和BEV分割任务。
161 1
|
9月前
|
机器学习/深度学习 传感器 算法
基于监督学习的多模态MRI脑肿瘤分割,使用来自超体素的纹理特征(Matlab代码实现)
基于监督学习的多模态MRI脑肿瘤分割,使用来自超体素的纹理特征(Matlab代码实现)
|
机器学习/深度学习 传感器 编解码
【图像融合】基于高分辨率全色图IHS图像融合含评价指标附matlab代码
【图像融合】基于高分辨率全色图IHS图像融合含评价指标附matlab代码
|
自然语言处理 搜索推荐 算法
人脸神经辐射场的掩码编辑方法NeRFFaceEditing,不会三维建模也能编辑立体人脸
人脸神经辐射场的掩码编辑方法NeRFFaceEditing,不会三维建模也能编辑立体人脸
135 0
|
机器学习/深度学习 传感器 编解码
【图像拼接】基于特征块匹配全景图像拼接附matlab代码
【图像拼接】基于特征块匹配全景图像拼接附matlab代码