博主简介:matlab图像代码项目合作(扣扣:3249726188)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
本次案例是基于SIFT/SURF特征算法的图像拼接,用matlab实现。
一、案例背景和算法介绍
前面的博客文章我们介绍图像处理的一个重要领域算法:图像匹配。图像匹配的算法比较多,有基于SIFT、SURF、Harris、墨西哥帽(Marr)小波等特征的匹配算法。前期介绍的算法如下:
SIFT匹配:基于SIFT算法的图像匹配(【图像匹配】基于SIFT算法的图像匹配,matlab实现-CSDN博客)
SURF匹配:基于SURF算法的图像匹配(【图像匹配】基于SURF算法的图像匹配,matlab实现-CSDN博客)
Harris匹配:基于Harris算法的图像匹配(【图像匹配】基于Harris算法的图像匹配,matlab实现-CSDN博客)
墨西哥帽(Marr)小波:基于墨西哥帽小波(Marr小波)算法的图像匹配(【图像匹配】基于墨西哥帽小波(Marr小波)算法的图像匹配,matlab实现-CSDN博客)
下面介绍一下图像拼接算法。
图像拼接算法主要分为两大部分,一是特征匹配,二是图像的拼接。之前的博客文章已经对各种典型的特征匹配算法做了介绍,下面具体细说一下拼接算法。
拼接的主要步骤如下:
1、根据输入的参考图像、待配准图像,选取特征算法(比如SIFT\SURF\Harris等),进行匹配,得到去除误匹陪后的匹配点
2、根据匹配点参数,对参考图像进行变换(可用matlab的imtransform函数)
3、对拼接图像重叠部分像素值处理,计算图像重叠区域,设置渐变系数,进行插值处理
根据特征匹配的算法情况,可以完成基于SIFT特征算法的图像拼接、基于SURF特征算法的图像拼接、基于Harris特征算法的图像拼接等等。
本次介绍的案例,主要是用了sift和surf这两个算法做的图像拼接,打包到GUI上展示。
下面看看具体的matlab实现效果。
二、Matlab实现效果
SURF拼接效果:
SIFT拼接效果: