中国史之【国人暴动】:
周厉王任命荣夷公为卿士,推行 “专利”政策,引起社会上下一片反对。为压制舆论的不满情绪,厉王又专门派人 “监谤”,发现有异议者则杀之。至公元前841年,国人暴动,逐厉王,厉王逃到彘地(今山西霍县),周召共和。此为中国历史上有确切纪年之开始。
——来源:全历史APP
【路漫漫其修远兮,吾将上下而求索】
今天介绍图像的几何操作实践(3)——图像配准。本内容参考自《实用MATLAB图像和视频处理》第7章。
- 对于matlab2021的安装,可以参考公众号【CV之道】的文章:【matlab安装】手把手图文并茂安装matlab2021(win10版)
1、图像配准(Image Registration)
图像配准是指对同一场景的两幅或多幅图像对齐的过程。首先,各个输入图像都与一幅基准图像比较。然后,对输入图像使用一个空间变换以将它与基准图像对齐。这里的关键步骤是确定将图像对齐的空间变换参数。
使用MATLAB和图像处理工具包进行图像配准的流程如下:

2、实践
2.1 使用cpselect打开基准图像和未配准的图像
% 图像配准
base = imread('klcc_a.png');
unregistered = imread('klcc_b.png');
% 打开控制点选择工具
cpselect(unregistered, base)
这时候出现的界面如下所示:

2.2 在图中选择10个控制点,注意流程是每在左图选择一个点时,都需要在右图对应位置选择一个点,以此实现匹配。如下图:

2.3 在界面的菜单选项中点击“文件–>将点导出到工作区”,来保存控制点

我们可以在工作区看到我们选择的控制点,接着,我们可以使用cpcorr进行微调控制点,也可以不微调。
2.4 使用cp2tform来确定空间变换的系数,并进行变换
% 选择变换类型
mytform = cp2tform(movingPoints, fixedPoints, 'nonreflective similarity')
% 进行变换
Imfo = imfinfo('klcc_a.png')
registered = imtransform(unregistered, mytform, 'XData', [1 Imfo.Width], 'YData', [1 Imfo.Height]);
2.5 最后,显示配准效果
% 将配准的图像覆盖在基准图像上
figure, imshow(registered);
hold on
h = imshow(base)
set(h, 'AlphaData', 0.6)

从上图可以看出,图像配准的效果还是很不错的。
以上是本期内容,建议自己动手来实践一下。如果需要图片和代码,可以关注公众号,回复关键字【matlab代码】即可获得。我会上传到云盘。
【声明】:学习笔记基于互联网上各种学习资源的个人整理。
以上是本期内容,下期介绍图像处理的灰度变换。
我叫小保,一名计算机视觉爱好者、学习者、追随者,欢迎关注我【CV之道】一起学习。