【傅里叶梅林图像配准】用于图像配准的傅里叶梅林相位相关性的实现(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥

****🏆博主优势:**🌞🌞🌞**博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

⛳️**座右铭:**行百里者,半于九十。

📋📋📋++本文目录如下:++🎁🎁🎁

目录

[💥1 概述](#💥1 概述)

[📚2 运行结果](#📚2 运行结果)

[🎉3 参考文献](#🎉3 参考文献)

[🌈4 Matlab代码实现](#🌈4 Matlab代码实现)


💥1 概述

傅里叶梅林图像配准是一种基于傅里叶变换和梅林相位相关性的图像配准方法。它可以应用于图像旋转、缩放和平移等简单的几何变换操作。

在图像配准中,傅里叶变换被广泛应用,它将图像从空域转换到频域,使得图像的特征在频域中更加明显。而梅林相位相关性则是一种基于图像的相位信息进行匹配的方法,通过计算图像之间的相位差异来评估它们的相似度。

在傅里叶梅林图像配准中,首先对待配准图像进行傅里叶变换,得到其频谱图。然后,对参考图像进行相同的处理。接着,通过计算两个频谱图的梅林相位相关性,可以得到它们之间的相位差异。根据相位差异的大小,可以确定待配准图像需要进行的旋转、缩放和平移操作。

例如,当待配准图像需要进行旋转时,可以通过调整其频谱图的相位来实现。通过计算待配准图像和参考图像的梅林相位相关性,可以得到最佳的旋转角度。类似地,当待配准图像需要进行缩放或平移时,也可以通过相同的方法来实现。

除了简单的图像旋转、缩放和平移,傅里叶梅林图像配准还可以应用于更复杂的图像变换,例如图像的仿射变换和透视变换。通过对待配准图像进行傅里叶变换和梅林相位相关性计算,可以得到最佳的变换参数,从而实现图像的准确配准。

总而言之,傅里叶梅林图像配准是一种基于傅里叶变换和梅林相位相关性的图像配准方法,可以应用于简单的图像旋转、缩放和平移等几何变换操作。它通过计算图像的相位差异来评估它们的相似度,并通过调整图像的频谱图来实现准确的配准。除了简单的变换,它还可以应用于更复杂的图像变换,为图像处理和计算机视觉领域提供了一种有效的配准方法。

📚 2 运行结果

【傅里叶梅林图像配准】用于图像配准的傅里叶梅林相位相关性的实现(Matlab代码实现) - 知乎

部分代码:

复制代码
% The procedure is as follows (note this does not compute scale)

    % (1)   Read in I1 - the image to register against
    % (2)   Read in I2 - the image to register
    % (3)   Take the FFT of I1, shifting it to center on zero frequency
    % (4)   Take the FFT of I2, shifting it to center on zero frequency
    % (5)   Convolve the magnitude of (3) with a high pass filter
    % (6)   Convolve the magnitude of (4) with a high pass filter
    % (7)   Transform (5) into log polar space
    % (8)   Transform (6) into log polar space
    % (9)   Take the FFT of (7)
    % (10)  Take the FFT of (8)
    % (11)  Compute phase correlation of (9) and (10)
    % (12)  Find the location (x,y) in (11) of the peak of the phase correlation
    % (13)  Compute angle (360 / Image Y Size) * y from (12)
    % (14)  Rotate the image from (2) by - angle from (13)
    % (15)  Rotate the image from (2) by - angle + 180 from (13)
    % (16)  Take the FFT of (14)
    % (17)  Take the FFT of (15)
    % (18)  Compute phase correlation of (3) and (16)
    % (19)  Compute phase correlation of (3) and (17)
    % (20)  Find the location (x,y) in (18) of the peak of the phase correlation
    % (21)  Find the location (x,y) in (19) of the peak of the phase correlation
    % (22)  If phase peak in (20) > phase peak in (21), (y,x) from (20) is the translation
    % (23a) Else (y,x) from (21) is the translation and also:
    % (23b) If the angle from (13) < 180, add 180 to it, else subtract 180 from it.
    % (24)  Tada!

    % Requires (ouch):

    % 6 x FFT
    % 4 x FFT Shift
    % 3 x IFFT
    % 2 x Log Polar
    % 3 x Phase Correlations
    % 2 x High Pass Filter
    % 2 x Image Rotation

    % ---------------------------------------------------------------------
   
    
    
    % Load first image (I1)

    I1 = imread('lena.bmp');

    
    

    % Load second image (I2)

    I2 = imread('lena_cropped_rotated_shifted.bmp');

    
    
    % ---------------------------------------------------------------------
   
    
    
    
    % Convert both to FFT, centering on zero frequency component

% The procedure is as follows (note this does not compute scale)

% (1) Read in I1 - the image to register against

% (2) Read in I2 - the image to register

% (3) Take the FFT of I1, shifting it to center on zero frequency

% (4) Take the FFT of I2, shifting it to center on zero frequency

% (5) Convolve the magnitude of (3) with a high pass filter

% (6) Convolve the magnitude of (4) with a high pass filter

% (7) Transform (5) into log polar space

% (8) Transform (6) into log polar space

% (9) Take the FFT of (7)

% (10) Take the FFT of (8)

% (11) Compute phase correlation of (9) and (10)

% (12) Find the location (x,y) in (11) of the peak of the phase correlation

% (13) Compute angle (360 / Image Y Size) * y from (12)

% (14) Rotate the image from (2) by - angle from (13)

% (15) Rotate the image from (2) by - angle + 180 from (13)

% (16) Take the FFT of (14)

% (17) Take the FFT of (15)

% (18) Compute phase correlation of (3) and (16)

% (19) Compute phase correlation of (3) and (17)

% (20) Find the location (x,y) in (18) of the peak of the phase correlation

% (21) Find the location (x,y) in (19) of the peak of the phase correlation

% (22) If phase peak in (20) > phase peak in (21), (y,x) from (20) is the translation

% (23a) Else (y,x) from (21) is the translation and also:

% (23b) If the angle from (13) < 180, add 180 to it, else subtract 180 from it.

% (24) Tada!

% Requires (ouch):

% 6 x FFT

% 4 x FFT Shift

% 3 x IFFT

% 2 x Log Polar

% 3 x Phase Correlations

% 2 x High Pass Filter

% 2 x Image Rotation

% ---------------------------------------------------------------------

% Load first image (I1)

I1 = imread('lena.bmp');

% Load second image (I2)

I2 = imread('lena_cropped_rotated_shifted.bmp');

% ---------------------------------------------------------------------

% Convert both to FFT, centering on zero frequency component

🎉3 参考文献

文章中一些内容引自网络,会注明出处或引用为参考文献,难免有未尽之处,如有不妥,请随时联系删除。

1李翰威,崔飞易,凌庆庆,等.基于傅里叶梅林变换的图像配准方法J.中国医学物理学杂志, 2023, 40(5):562-567.

2李傲梅,姜万里.基于图像特征的傅里叶梅林变换在图像配准中的应用J.计算机与数字工程, 2017, 45(4):5.DOI:10.3969/j.issn.1672-9722.2017.04.030.

3周刚.一种傅里叶-梅林变换空间图像快速配准算法J. 2010.

4焦继超1,赵保军1,周刚2.一种傅里叶---梅林变换空间图像快速配准算法J.兵工学报, 2010, 31(12):1551-1556.

🌈4 Matlab代码实现

相关推荐
大数据在线1 小时前
布局Agentic AI,亚马逊云科技组合拳再升级
人工智能·openai·亚马逊云科技·智能体·agentic ai
皮皮学姐分享-ppx5 小时前
政府绿色采购数据库(2015-2024.3)
大数据·网络·数据库·人工智能·制造
GIS数据转换器5 小时前
基于3D GIS的监控视频精准标定平台
人工智能·物联网·3d·音视频·无人机·知识图谱
专注VB编程开发20年5 小时前
AI 生成C# WinForm 窗体 = 目前就是垃圾
开发语言·人工智能·c#
深小乐5 小时前
Claude Fable5 尝鲜,效果挺不错
人工智能
Nayxxu6 小时前
Gemini + RAG 企业知识库教程:从文档切片到答案生成
运维·人工智能
冬奇Lab6 小时前
真正的 AI-Native Workflow 是什么?——四个判断测试
人工智能·agent
冬奇Lab6 小时前
每日一个开源项目(第128篇):Agent Skills - 给 AI 编程 Agent 装上工程纪律
人工智能·开源·资讯
Deepoch6 小时前
Deepoc VLA开发板:采摘机器人的环境鲁棒作业与不确定性应对
人工智能·机器人·采摘机器人·deepoc